|  | 		    
					
        
         
          
         
	
          | |  | Udskrive en graf ud fra en tekstfil Fra : Stampe
 | 
 Dato :  25-05-09 10:10
 | 
 |  | 
 
            Jeg har en temperatur logger som skriver til en tekstfil se: 
http://harlvig.dk/test/2006150.log 2006,150,23,40,00,23.00,,,   = Året, dag i 
 året,timen,minuttet,sekundet,temperaturen
 altså er målingen fra:
 År 2006
 Dag 150
 Kl. 23:40:00
 Temperaturen er 23.00
 Findes der en simpel php rutine så jeg kan få 24 timers graf ud af sådan en 
 tekstfil?
 Mvh
 Allan 
            
             |  |  | 
  Johan Holst Nielsen (25-05-2009) 
 
	
          | |  | Kommentar Fra : Johan Holst Nielsen
 | 
 Dato :  25-05-09 10:46
 | 
 |  | 
 
            Stampe wrote:
 > Jeg har en temperatur logger som skriver til en tekstfil se:
 > http://harlvig.dk/test/2006150.log > 
 > 2006,150,23,40,00,23.00,,,   = Året, dag i
 > året,timen,minuttet,sekundet,temperaturen
 > 
 > altså er målingen fra:
 > År 2006
 > Dag 150
 > Kl. 23:40:00
 > 
 > Temperaturen er 23.00
 > 
 > Findes der en simpel php rutine så jeg kan få 24 timers graf ud af sådan
 > en tekstfil?
 Det nemmeste ville nok være at lave en simpelt parser af filformatet -
 og så smide det ind via Google Chart API:
http://code.google.com/apis/chart/ /Johan
            
             |  |  | 
  Stampe (25-05-2009) 
 
	
          | |  | Kommentar Fra : Stampe
 | 
 Dato :  25-05-09 10:59
 | 
 |  | 
 "Johan Holst Nielsen" <spam@phpgeek.dk> skrev i meddelelsen 
 news:4a1a68c0$0$90267$14726298@news.sunsite.dk...
 >
 > Det nemmeste ville nok være at lave en simpelt parser af filformatet -
 > og så smide det ind via Google Chart API:
 >
 > http://code.google.com/apis/chart/ >
 > /Johan
 Jeg ved ikke lige hvordan man "parser" min logfil - det skulle også gerne 
 kunne vises på min hjemmeside
 Mvh
 Allan
 
            
             |  |  | 
   Johan Holst Nielsen (25-05-2009) 
 
	
          | |  | Kommentar Fra : Johan Holst Nielsen
 | 
 Dato :  25-05-09 12:00
 | 
 |  | 
 
            Stampe wrote:
 > 
 > "Johan Holst Nielsen" <spam@phpgeek.dk> skrev i meddelelsen
 > news:4a1a68c0$0$90267$14726298@news.sunsite.dk...
 >>
 >> Det nemmeste ville nok være at lave en simpelt parser af filformatet -
 >> og så smide det ind via Google Chart API:
 >>
 >> http://code.google.com/apis/chart/ >>
 >> /Johan
 > 
 > Jeg ved ikke lige hvordan man "parser" min logfil - det skulle også
 > gerne kunne vises på min hjemmeside
 Har ikke lige tid til at lave et helt script...
 Omkring visning på hjemmesiden kan du sagnes gøre det med Google Chart
 API - det er blot et <img> hvor src er til google med en masse data i
 GET parametre.
 Parsing af logfilen kig på
www.php.net/fopen
www.php.net/fgetcsv Mvh
 Johan
            
             |  |  | 
    Stig Johansen (25-05-2009) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  25-05-09 14:52
 | 
 |  | Johan Holst Nielsen wrote:
 
 > Omkring visning på hjemmesiden kan du sagnes gøre det med Google Chart
 > API - det er blot et <img> hvor src er til google med en masse data i
 > GET parametre.
 
 Der er typisk begrænsning på størrelsen af en GET request, varierende fra
 512B til 2048B (aht sikkerhed), så det er ikke sikkert det kan lade sig
 gøre.
 
 Hvis det var mig, ville jeg nok kigge på noget SVG.
 En sådan graf burde ikke kræve voldsomt mange kodelinier.
 
 --
 Med venlig hilsen
 Stig Johansen
 
 
 |  |  | 
     Johan Holst Nielsen (25-05-2009) 
 
	
          | |  | Kommentar Fra : Johan Holst Nielsen
 | 
 Dato :  25-05-09 15:26
 | 
 |  | 
 
            Stig Johansen wrote:
 > Johan Holst Nielsen wrote:
 > 
 >> Omkring visning på hjemmesiden kan du sagnes gøre det med Google Chart
 >> API - det er blot et <img> hvor src er til google med en masse data i
 >> GET parametre.
 > 
 > Der er typisk begrænsning på størrelsen af en GET request, varierende fra
 > 512B til 2048B (aht sikkerhed), så det er ikke sikkert det kan lade sig
 > gøre.
 Tjah Google har noget dataencoding - så det bør ikke være et større
 problem.... Det er begrænset hvor mange punkter man skal have på en
 chart - hvis der skal være et vis overblik. Det giver ikke mening at
 sætte 1000 punkter på et chart der er 1000px bred f.eks.
 Se mere:
http://code.google.com/apis/chart/formats.html#encoding_data > 
 > Hvis det var mig, ville jeg nok kigge på noget SVG.
 > En sådan graf burde ikke kræve voldsomt mange kodelinier.
 Svjv skal man stadig bruge browserplugins til SVG - som alle ikke har
 (skulle man i hvert fald sidst jeg tjekkede? Er det ændret nu?).
 /Johan
            
             |  |  | 
      Stig Johansen (25-05-2009) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  25-05-09 15:50
 | 
 |  | 
 
            Johan Holst Nielsen wrote:
 > Tjah Google har noget dataencoding - så det bør ikke være et større
 > problem.... Det er begrænset hvor mange punkter man skal have på en
 > chart - hvis der skal være et vis overblik. Det giver ikke mening at
 > sætte 1000 punkter på et chart der er 1000px bred f.eks.
 > 
 > Se mere:
 > http://code.google.com/apis/chart/formats.html#encoding_data Enig, men hvis man skal til selv at lave encoding går det 'nemme' lidt
 fløjten.
 Jeg vil mene det er nemmere at fabrikere SVG end at 'base64' encode data.
 > Svjv skal man stadig bruge browserplugins til SVG - som alle ikke har
 > (skulle man i hvert fald sidst jeg tjekkede? Er det ændret nu?).
 Ja, 'en vis herre' sværger åbenbart til VML, hvor andre understøtter SVG.
 Det er lidt ærgreligt, for det forhindrer udbredelsen af vektor grafik, som
 ellers er ideelt til grafer og den slags.
 Men bortset fra det, så skal man have pluging til flash, PDF osv, så hvorfor
 ikke også en plugin til SVG (til dem der kun bruger IE).
 -- 
 Med venlig hilsen
 Stig Johansen
            
             |  |  | 
       Johan Holst Nielsen (25-05-2009) 
 
	
          | |  | Kommentar Fra : Johan Holst Nielsen
 | 
 Dato :  25-05-09 18:26
 | 
 |  | 
 
            Stig Johansen wrote:
 > Johan Holst Nielsen wrote:
 > 
 >> Tjah Google har noget dataencoding - så det bør ikke være et større
 >> problem.... Det er begrænset hvor mange punkter man skal have på en
 >> chart - hvis der skal være et vis overblik. Det giver ikke mening at
 >> sætte 1000 punkter på et chart der er 1000px bred f.eks.
 >>
 >> Se mere:
 >> http://code.google.com/apis/chart/formats.html#encoding_data > 
 > Enig, men hvis man skal til selv at lave encoding går det 'nemme' lidt
 > fløjten.
 > Jeg vil mene det er nemmere at fabrikere SVG end at 'base64' encode data.
 Tjah - der er et fiks og færdig JS på siden jeg linkede til. Så synes nu
 ikke det er så bøvlet ;)
 >> Svjv skal man stadig bruge browserplugins til SVG - som alle ikke har
 >> (skulle man i hvert fald sidst jeg tjekkede? Er det ændret nu?).
 > 
 > Ja, 'en vis herre' sværger åbenbart til VML, hvor andre understøtter SVG.
 > Det er lidt ærgreligt, for det forhindrer udbredelsen af vektor grafik, som
 > ellers er ideelt til grafer og den slags.
 Ja - men 'en vis herre' har stadig en meget stor del af browsermarkedet.
 Kører selv Linux - så jeg klager ikke over manglende plugin. Men det er
 synd for resten.
 > Men bortset fra det, så skal man have pluging til flash, PDF osv, så hvorfor
 > ikke også en plugin til SVG (til dem der kun bruger IE).
 Forskellen mellem Flash / PDF og SVG er at Flash og PDF er "standarder"
 for Hr. og Fru Danmark. De kan jo ikke læse en netavis uden at se flash
 annoncer (og nej - Hr og Fru Danmark har ikke adblockers ;)). Ligesom de
 ikke kan benytte f.eks. eboks, se selvangivelsen via SKAT osv via PDF.
 Samme udbredelse nyder SVG ikke. Så bryder mig ikke om sammenligningen -
 selvom jeg selvfølgelig også ville forestrække SVG var en udbredt
 standard. Man bliver bare nødt til at se sandheden i øjenene - og det er
 at SVG ikke er udbredt nok *endnu*.
 På den anden side - hvis Allan skal bygge et system som primært bruges
 af venner, bekendte, familie - så er SVG sikkert fint nok. Da man i de
 fleste tilfælde kan vejlede brugeren til at installere det. Det kan man
 blot sjældent med udefrakommende, med mindre man er et respekteret
 medie, organ eller lign.
 /Johan
            
             |  |  | 
        Stampe (26-05-2009) 
 
	
          | |  | Kommentar Fra : Stampe
 | 
 Dato :  26-05-09 06:08
 | 
 |  | 
 
            "Johan Holst Nielsen" <spam@phpgeek.dk> skrev i meddelelsen 
 news:4a1ad49a$0$90265$14726298@news.sunsite.dk...
 >
 > Tjah - der er et fiks og færdig JS på siden jeg linkede til. Så synes nu
 > ikke det er så bøvlet ;)
 >
 Ja jo ok - må lige se om jeg kan få det til at virke, kan ikke rigtig se 
 hvordan jeg får pillet de ønskede data ud af min tekstfil, men vil arbejde 
 på det    Mht. SVG - så aner jeg ikke hvad hvad det er -men vil prøve at google mig 
 lidt frem
 Mvh
 Allan
 
            
             |  |  | 
         Johan Holst Nielsen (26-05-2009) 
 
	
          | |  | Kommentar Fra : Johan Holst Nielsen
 | 
 Dato :  26-05-09 07:54
 | 
 |  | 
 
            Stampe wrote:
 > "Johan Holst Nielsen" <spam@phpgeek.dk> skrev i meddelelsen
 > news:4a1ad49a$0$90265$14726298@news.sunsite.dk...
 >>
 >> Tjah - der er et fiks og færdig JS på siden jeg linkede til. Så synes nu
 >> ikke det er så bøvlet ;)
 >>
 > Ja jo ok - må lige se om jeg kan få det til at virke, kan ikke rigtig se
 > hvordan jeg får pillet de ønskede data ud af min tekstfil, men vil
 > arbejde på det    Stig og jeg kom lige ud i en mere "teoretisk" diskussion - der nok blev
 en smule off-topic.
 > Mht. SVG - så aner jeg ikke hvad hvad det er -men vil prøve at google
 > mig lidt frem
 Der er en fin guide her:
http://www.w3schools.com/svg/default.asp Mvh
 Johan
            
             |  |  | 
          Stig Johansen (26-05-2009) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  26-05-09 13:18
 | 
 |  | 
 
            "Johan Holst Nielsen" <spam@phpgeek.dk> wrote in message
 news:4a1b91f5$0$90265$14726298@news.sunsite.dk...
 > Stig og jeg kom lige ud i en mere "teoretisk" diskussion - der nok blev
 > en smule off-topic.
 Okææh, så meget offtopic var det vel heller ikke, taget i betragtning af at
 man ønsker at lave en graf ud fra en tekstfil.
 Men nu tog jeg 'stampe's tekstfil, og lavede en primitiv (SVG) graf:
http://w-o-p-r.dk/test/stampe/svgdemo.asp Det er uden akser og tics, osv, blot for at illustrere hvordan man man kan
 generere SVG ud fra 'ikke så voldsomt mange' linier kode.
 Jo, OT er det, for det er lavet i ASP, og vi befinder os i en PHP gruppen,
 men kildeteksten til ASP'et er:
 ......
 <%@ LANGUAGE = VBScript %><%  Option Explicit     %><%
 Response.ContentType = "image/svg+xml"
 %><?xml version="1.0" standalone="yes"?>
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Basic//EN"
 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd"> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="svg-root" width="100%" height="100%" viewBox="0 0 3000 3000"
 version="1.1" baseProfile="basic">
 <%
 Dim Filename
 Dim lFile
 Dim ThisLine
 Dim CoordinatesArray
 Dim X,Y
 Dim first
    Filename = Server.MapPath("2006150.log")
    set lFile =
 Server.CreateObject("Scripting.FileSystemObject").OpenTextFile(FileName,1)
    response.write "<path style=""fill:none;stroke:#00FF00;stroke-width:2"""
    first = true
    do while not lFile.AtEndOfLine
       ThisLine = lFile.readline
       CoordinatesArray = split (ThisLine,",")
       X = cInt(CoordinatesArray(2)) * 120 + cInt(CoordinatesArray(3)) * 2 +
 cInt(CoordinatesArray(4))
       Y = 3000 - cInt(CoordinatesArray(5))
       if first then
         Response.Write " d=""M " + cStr(X) + "," + cStr(Y)
         first = false
       else
          Response.Write "L" + cStr(X) + "," + cStr(Y) + " "
       end if
    loop
    response.write """/></svg>"
    set lFile = nothing
 %>
 ......
 Det burde være nogenlunde ligetil at 'PHP-ificere'.
 --
 Med venlig hilsen/Best regards
 Stig Johansen
            
             |  |  | 
           Stig Johansen (26-05-2009) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  26-05-09 15:23
 | 
 |  | 
 
            "Stig Johansen" <wopr.dk@gmail.com> wrote in message
 news:4a1bddbd$0$90264$14726298@news.sunsite.dk...
 He - så lidt underlig ud, så denne linie:
 >       X = cInt(CoordinatesArray(2)) * 120 + cInt(CoordinatesArray(3)) * 2
 +
 > cInt(CoordinatesArray(4))
 er rettet til
       X = cInt(CoordinatesArray(2)) * 120 + cInt(CoordinatesArray(3)) * 2 +
 cInt(CoordinatesArray(4))/30
 Og så kom jeg i tanke om den spastisk lammede browser (IE6), som mener at
 URL'en skal ende på .svg, uagtet MIME typen.
 Men ellers kan man blot benytte:
http://w-o-p-r.dk/test/stampe/svgdemo.asp?f=e.svg Jeg har ikke IE7 eller senere, så jeg ved ikke om 'han' har fået gjort noget
 ved det.
 --
 Med venlig hilsen/Best regards
 Stig Johansen
            
             |  |  | 
      Stig Johansen (26-05-2009) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  26-05-09 09:11
 | 
 |  | Johan Holst Nielsen wrote:
 
 > Tjah ....
 
 At folk bruger Tjah som indledning gør, at jeg ikke gider at bruge tid på
 dem.
 
 > Det er begrænset hvor mange punkter man skal have på en
 > chart - hvis der skal være et vis overblik. Det giver ikke mening at
 > sætte 1000 punkter på et chart der er 1000px bred f.eks.
 
 Når (hvis) vi snakker SVG, så kan intet være mindre rigtigt end det du
 skriver.
 
 Jeg har dig mistænkt for at 'fanget' i rastergrafik, og ikke vektorgrafik.
 
 Bemærk af S'et står for SCALABLE, så man kan sagtens definere et
 koordinatsystem, der kun fylder 1000X1000, men indeholder reelle værdier af
 XY koordinater, så 998.12345x500.54321 er validt, og scalerer ved zoom.
 
 Prøv at kigge på Adobes SVG plugin til IE - 'and you will see'.
 
 --
 Med venlig hilsen
 Stig Johansen
 
 
 |  |  | 
       Johan Holst Nielsen (26-05-2009) 
 
	
          | |  | Kommentar Fra : Johan Holst Nielsen
 | 
 Dato :  26-05-09 10:39
 | 
 |  | Stig Johansen wrote:
 > Johan Holst Nielsen wrote:
 >
 >> Tjah ....
 >
 > At folk bruger Tjah som indledning gør, at jeg ikke gider at bruge tid på
 > dem.
 
 Så mister du meget brugbar viden. Det er som at sætte en spamfilter op
 der automatisk sletter alle mails hvor ordet viagra indgår... ikke
 specielt intelligent imo.
 
 >> Det er begrænset hvor mange punkter man skal have på en
 >> chart - hvis der skal være et vis overblik. Det giver ikke mening at
 >> sætte 1000 punkter på et chart der er 1000px bred f.eks.
 >
 > Når (hvis) vi snakker SVG, så kan intet være mindre rigtigt end det du
 > skriver.
 
 Hvis du lader være med at gribe det ud af sammenhængen ville du måske
 forstå.... mit svar omkring 1000 punkter var vedrørende Google maps,
 hvor du mente det vil være problematisk, at man havde en begrænset
 størrelse af GET requested. Det havde overhoved ingen relation til SVG
 formatet....
 
 Så lad være med at ligge ord i munden på mig...
 
 > Jeg har dig mistænkt for at 'fanget' i rastergrafik, og ikke vektorgrafik.
 
 Nej - det er indlejret i en sætning omkring Google Maps der som laver
 bitmap filer. Jeg er fuldstændig klar over forskellen mellem
 raster/bitmap og vektorgrafik.
 
 > Bemærk af S'et står for SCALABLE, så man kan sagtens definere et
 > koordinatsystem, der kun fylder 1000X1000, men indeholder reelle værdier af
 > XY koordinater, så 998.12345x500.54321 er validt, og scalerer ved zoom.
 
 Ja det er jeg klar over. Har skam arbejdet med SVG mere end én gang...
 
 > Prøv at kigge på Adobes SVG plugin til IE - 'and you will see'.
 
 Jeg kører Linux... så det hjælper ikke meget. Jeg har fuld
 understøttelse af SVG.
 
 Jeg kender udemærket SVG plugin'et til IE. Men det hjælper bare ikke
 noget hvis man laver en hjemmeside til Hr. og Fru Jensen og fortæller de
 skal downloade et plugin. Det mister man besøgende af... Som jeg har
 nævnt i et andet indlæg er mit syn positivt på SVG. Jeg mener klar det
 vil være super brugbart *hvis* flere IE brugere var med på vognen. Men
 det er bare ikke tilfældet.
 
 Derfor ville jeg *aldrig* bruge SVG med mindre der er tale om et
 intranet eller en hjemmeside der var beregnet til en meget specifik
 målgruppe (f.eks. familie, venner, interessefælter indenfor et snævert
 område) - da man i disse tilfælde typisk nemmere kan påvirke brugeren.
 
 Men hvis man henvender sig til en bredere målgruppe, vil jeg stadig mene
 det vil være idiotisk at bygge et site op med krav om SVG plugins.
 
 /Johan
 
 
 |  |  | 
        Stig Johansen (27-05-2009) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  27-05-09 10:18
 | 
 |  | Johan Holst Nielsen wrote:
 
 > Stig Johansen wrote:
 >> At folk bruger Tjah som indledning gør, at jeg ikke gider at bruge tid på
 >> dem.
 >
 > Så mister du meget brugbar viden. Det er som at sætte en spamfilter op
 > der automatisk sletter alle mails hvor ordet viagra indgår... ikke
 > specielt intelligent imo.
 
 Som jeg plejer at sige: "The perception is in the eyes of the beholder".
 Eller med andre ord: "Hvilken viden mener du jeg mister?"
 
 > Hvis du lader være med at gribe det ud af sammenhængen ville du måske
 > forstå.... mit svar omkring 1000 punkter var vedrørende Google maps,
 > hvor du mente det vil være problematisk, at man havde en begrænset
 > størrelse af GET requested. Det havde overhoved ingen relation til SVG
 > formatet....
 
 Nej, men 'stampe' præsenterer en logfil, hvor samples er pr. ½ minut, så
 antallet af samples er 24*60*2 - hvordan mener du den passer ned på eks.
 1000 px?
 
 > Så lad være med at ligge ord i munden på mig...
 
 Det gør jeg heller ikke, men det skrevne ord er lidt besværligt, så det er
 min *opfattelse* af dine skrevne ord.
 
 > Jeg kender udemærket SVG plugin'et til IE. Men det hjælper bare ikke
 > noget hvis man laver en hjemmeside til Hr. og Fru Jensen og fortæller de
 > skal downloade et plugin.
 
 Hvis det er (dit) kardinalpunktet?
 Hvis target audience er Hr. og Fru Jensen, så lav det i VML, som IE har
 native understøttelse for.
 
 Ellers lav det med:
 IF IE then
 VML
 else
 SVG
 END-IF.
 
 > Men hvis man henvender sig til en bredere målgruppe, vil jeg stadig mene
 > det vil være idiotisk at bygge et site op med krav om SVG plugins.
 
 Den holdning fatter jeg - rent ud sagt - ikke en skid af.
 Du accepterer (tilsyneladende) plugins fra Adobe:
 - PDF
 - FLASH (ja ja tidligere makromedia)
 men ikke SVG som er fra samme virksomhed ..?
 
 --
 Med venlig hilsen
 Stig Johansen
 
 
 |  |  | 
         Johan Holst Nielsen (27-05-2009) 
 
	
          | |  | Kommentar Fra : Johan Holst Nielsen
 | 
 Dato :  27-05-09 13:43
 | 
 |  | Stig Johansen wrote:
 > Johan Holst Nielsen wrote:
 >
 >> Stig Johansen wrote:
 >>> At folk bruger Tjah som indledning gør, at jeg ikke gider at bruge tid på
 >>> dem.
 >> Så mister du meget brugbar viden. Det er som at sætte en spamfilter op
 >> der automatisk sletter alle mails hvor ordet viagra indgår... ikke
 >> specielt intelligent imo.
 >
 > Som jeg plejer at sige: "The perception is in the eyes of the beholder".
 > Eller med andre ord: "Hvilken viden mener du jeg mister?"
 
 Det ser ud til du ikke forstår meningen med ordet "tjah" (eller tja som
 det staves helt korrekt).
 
 Citat Dansk Sprog Nævn:
 "Resultatet af et ja er altid et udsagn med positivt fortegn, men ja
 bruges kun som respons på udsagn med positivt fortegn, og altså ikke til
 at vende fortegn. Det gælder også jah og tja, som dog bruges til at
 udtrykke forbehold over for udsagnets sandhedsværdi, fx fordi den ikke
 gælder ubetinget. Jah efterfølges ofte af men."
 
 Eftersom det omhandlede GET requested størrelse, som jeg er enig i har
 den begrænsning (hvem er ikke det ;)) - men jeg "udtrykte" forbehold for
 det var et problem i forbindelse med Allans opgave.
 
 >> Hvis du lader være med at gribe det ud af sammenhængen ville du måske
 >> forstå.... mit svar omkring 1000 punkter var vedrørende Google maps,
 >> hvor du mente det vil være problematisk, at man havde en begrænset
 >> størrelse af GET requested. Det havde overhoved ingen relation til SVG
 >> formatet....
 >
 > Nej, men 'stampe' præsenterer en logfil, hvor samples er pr. ½ minut, så
 > antallet af samples er 24*60*2 - hvordan mener du den passer ned på eks.
 > 1000 px?
 
 Hvorfor begrænset det? Så vidt jeg kunne se var det en eksempel logfil?
 Kunne sagnes forestille mig man lavede grafer over længere perioder end
 24 timer i fremtiden.
 
 Det er altid dumt at begrænse sig på baggrund af "sådan er det nu".
 
 >> Så lad være med at ligge ord i munden på mig...
 >
 > Det gør jeg heller ikke, men det skrevne ord er lidt besværligt, så det er
 > min *opfattelse* af dine skrevne ord.
 
 Så tjek hvad jeg svarer på. Jeg citerer trods alt. Jeg kunne forstå hvis
 jeg toppostede.
 
 >> Jeg kender udemærket SVG plugin'et til IE. Men det hjælper bare ikke
 >> noget hvis man laver en hjemmeside til Hr. og Fru Jensen og fortæller de
 >> skal downloade et plugin.
 >
 > Hvis det er (dit) kardinalpunktet?
 > Hvis target audience er Hr. og Fru Jensen, så lav det i VML, som IE har
 > native understøttelse for.
 >
 > Ellers lav det med:
 > IF IE then
 >    VML
 > else
 >    SVG
 > END-IF.
 
 Ja - det vil jeg helt klar mene var bedre - omend mere besværligt end så
 meget andet. I så fald ville jeg nok vælge en Flash version - indtil man
 kunne skrotte IE brugerne uden SVG :) Men det er såmændt en spørgsmål om
 smag og behag.
 
 Dog ville jeg nok finde et SVG-to-SWF tool - og så bruge det - i stedet
 for at bruge tid på VML. (Ved dog ikke om der findes SVG-to-VML scripts?)
 
 >> Men hvis man henvender sig til en bredere målgruppe, vil jeg stadig mene
 >> det vil være idiotisk at bygge et site op med krav om SVG plugins.
 >
 > Den holdning fatter jeg - rent ud sagt - ikke en skid af.
 > Du accepterer (tilsyneladende) plugins fra Adobe:
 > - PDF
 > - FLASH (ja ja tidligere makromedia)
 > men ikke SVG som er fra samme virksomhed ..?
 
 Det handler intet om virksomheden. Det handler om udbredelsen. Jeg mener
 stadig det er tåbeligt at opbygge et website - med krav om brugerne
 installerer komponenter.
 
 Jeg har på intet tidspunkt udtrykt mit had overfor SVG. Faktisk har jeg
 rost det - hvis du har læst mine indlæg igennem.
 
 Men det hjælper bare ikke at man skal bede brugeren om at installere et
 plugin - det kommer man ikke langt med...
 
 /Johan
 
 
 |  |  | 
  Bertel Lund Hansen (26-05-2009) 
 
	
          | |  | Kommentar Fra : Bertel Lund Hansen
 | 
 Dato :  26-05-09 20:03
 | 
 |  | 
 
            "Stampe" <ask@ SLET ask-service.dk> skrev:
 > Jeg har en temperatur logger som skriver til en tekstfil se: 
 > http://harlvig.dk/test/2006150.log > 2006,150,23,40,00,23.00,,,   = Året, dag i 
 > året,timen,minuttet,sekundet,temperaturen
 Data kan trækkes ud sådan:
 $loglines=file('2006150.log');
 foreach ($loglines as $line) {
      list($year,$day,$hour,$minute,$second,$temperature)=explode(',',$line);
      do_something_smart_with_data();
 }
 Med et PHP-system som sikkert er installeret på din server, kan
 du lave grafik. Systemet hedder GD, og der står om det her i manualen:
     http://dk2.php.net/manual/en/function.gd-info.php Princippet er at man opretter en separat PHP-fil der genererer et billede,
 og dette billede lægges så i HTML-filen med et img-tag. Her er en linje
      echo "<div><img src='takstkurver.php?minutter=$minute' width='200' height='300' alt='Takstkurver'></div>\n";
 som jeg bruger på denne her side:
     http://bertel.lundhansen.dk/?page=telefoni Her er koden til takstkurver.php. Det er måske lidt indviklet, og jeg orker
 ikke at forenkle det, men du kan se hvordan man kan tegne diverse grafiske elementer.
 ================ Kode ================
 <?
 function grafer ($grafenhed) {
      GLOBAL $im, $udbydere;
      $offset=20;
      $maxy=GRAFY-$offset;
      $ypix=180/$grafenhed*ZOOM;
      $xpix=$ypix*2;
      $step=1/ZOOM;
      // Første kald sætter baggrunden (uanset hvad den kaldes):
      $white  = ImageColorAllocate ($im,255,255,255);
      $black  = ImageColorAllocate ($im,0,0,0);
      $farve = Array();
      foreach ($udbydere as $nr => $udbyder) {
         $temp=explode('.',substr($udbyder->farve,1));
         $farve[]=ImageColorAllocate ($im,hexdec($temp[0]),hexdec($temp[1]),hexdec($temp[2]));
      }
      imageline($im,0,$maxy,GRAFX,$maxy,$black);
      for ($min=0; $min<$grafenhed/TAKSTPERIODE; ++$min) {
         $x=$min*60*$xpix+$offset;
         imageline($im,$x,$maxy,$x,$maxy+10,$black);
         imagestring($im,2,$x+10,$maxy+2,$min,$black);
      }
      --$min;
      imagestring($im,2,$x+10,$maxy+2,$min.' min.',$black);
      imageline($im,$offset,GRAFY,$offset,0,$black);
      for ($ore=50; $ore<$maxy/$ypix; $ore+=50) {
         $y=$maxy-$ore*$ypix;
         if ($ore%100) imageline($im,15,$y,$offset,$y,$black);
         else {
            imageline($im,5,$y,$offset,$y,$black);
            imagestring($im,2,0,$y,$ore/100,$black);
         }
      }
      imagestring($im,2,0,0,'kr.',$black);
      imageline($im,0,11,4,4,$black);
      foreach ($udbydere as $f => $udbyder) {
         $farv=$farve[$f];
         for ($sek=0; $sek<$grafenhed; $sek+=$step)
            for ($nr=0; $nr<AFTALETYPER; ++$nr) {
               list($enhed,$takst,$opkald,$takstfaktor)=$udbyder->aftale[$nr];
               if ($enhed) {
                  $takstfaktor=$takst/TAKSTPERIODE*$enhed;
                  $p=floor($sek/$enhed);
                  if ($sek%$enhed) ++$p;
                  $pris=$p*$takstfaktor+$opkald;
                  $y=$maxy-$pris*$ypix;
                  imagesetpixel($im,$sek*$xpix+$offset,$y,$farv);
               }
            }
      }
 }
 require 'telefonini.inc';
 header ("Content-type: image/png");
 $im = @ImageCreate (GRAFX, GRAFY) or die ("Cannot Initialize new GD image stream");
 grafer($_GET['minutter']*60);
 ImagePng ($im);
 ImageDestroy($im);
 ?>
 ================ Kode slut ================
 -- 
 Bertel
http://bertel.lundhansen.dk/          FIDUSO: http://fiduso.dk/ |  |  | 
  Stampe (27-05-2009) 
 
	
          | |  | Kommentar Fra : Stampe
 | 
 Dato :  27-05-09 06:10
 | 
 |  | 
 
            "Bertel Lund Hansen" <unospamo@lundhansen.dk> skrev i meddelelsen 
 news:sheo15pivt4480cta4u187rvhpivh6v9mk@news.stofanet.dk...
 > "Stampe" <ask@ SLET ask-service.dk> skrev:
 >
 >> Jeg har en temperatur logger som skriver til en tekstfil se:
 >> http://harlvig.dk/test/2006150.log >
 >> 2006,150,23,40,00,23.00,,,   = Året, dag i
 >> året,timen,minuttet,sekundet,temperaturen
 >
 > Data kan trækkes ud sådan:
 >
 > $loglines=file('2006150.log');
 > foreach ($loglines as $line) {
 >  list($year,$day,$hour,$minute,$second,$temperature)=explode(',',$line);
 >  do_something_smart_with_data();
 > }
 >
 > Med et PHP-system som sikkert er installeret på din server, kan
 > du lave grafik. Systemet hedder GD, og der står om det her i manualen:
 >
 >  http://dk2.php.net/manual/en/function.gd-info.php >
 > Princippet er at man opretter en separat PHP-fil der genererer et billede,
 > og dette billede lægges så i HTML-filen med et img-tag. Her er en linje
 >
 >  echo "<div><img src='takstkurver.php?minutter=$minute' width='200' 
 > height='300' alt='Takstkurver'></div>\n";
 >
 > som jeg bruger på denne her side:
 >
 >  http://bertel.lundhansen.dk/?page=telefoni >
 > Her er koden til takstkurver.php. Det er måske lidt indviklet, og jeg 
 > orker
 > ikke at forenkle det, men du kan se hvordan man kan tegne diverse grafiske 
 > elementer.
 >
 > ================ Kode ================
 > <?
 > function grafer ($grafenhed) {
 >  GLOBAL $im, $udbydere;
 >  $offset=20;
 >  $maxy=GRAFY-$offset;
 >  $ypix=180/$grafenhed*ZOOM;
 >  $xpix=$ypix*2;
 >  $step=1/ZOOM;
 >  // Første kald sætter baggrunden (uanset hvad den kaldes):
 >  $white  = ImageColorAllocate ($im,255,255,255);
 >  $black  = ImageColorAllocate ($im,0,0,0);
 >  $farve = Array();
 >  foreach ($udbydere as $nr => $udbyder) {
 >  $temp=explode('.',substr($udbyder->farve,1));
 >  $farve[]=ImageColorAllocate 
 > ($im,hexdec($temp[0]),hexdec($temp[1]),hexdec($temp[2]));
 >  }
 >  imageline($im,0,$maxy,GRAFX,$maxy,$black);
 >  for ($min=0; $min<$grafenhed/TAKSTPERIODE; ++$min) {
 >  $x=$min*60*$xpix+$offset;
 >  imageline($im,$x,$maxy,$x,$maxy+10,$black);
 >  imagestring($im,2,$x+10,$maxy+2,$min,$black);
 >  }
 >  --$min;
 >  imagestring($im,2,$x+10,$maxy+2,$min.' min.',$black);
 >  imageline($im,$offset,GRAFY,$offset,0,$black);
 >  for ($ore=50; $ore<$maxy/$ypix; $ore+=50) {
 >  $y=$maxy-$ore*$ypix;
 >  if ($ore%100) imageline($im,15,$y,$offset,$y,$black);
 >  else {
 >  imageline($im,5,$y,$offset,$y,$black);
 >  imagestring($im,2,0,$y,$ore/100,$black);
 >  }
 >  }
 >  imagestring($im,2,0,0,'kr.',$black);
 >  imageline($im,0,11,4,4,$black);
 >  foreach ($udbydere as $f => $udbyder) {
 >  $farv=$farve[$f];
 >  for ($sek=0; $sek<$grafenhed; $sek+=$step)
 >  for ($nr=0; $nr<AFTALETYPER; ++$nr) {
 >  list($enhed,$takst,$opkald,$takstfaktor)=$udbyder->aftale[$nr];
 >  if ($enhed) {
 >  $takstfaktor=$takst/TAKSTPERIODE*$enhed;
 >  $p=floor($sek/$enhed);
 >  if ($sek%$enhed) ++$p;
 >  $pris=$p*$takstfaktor+$opkald;
 >  $y=$maxy-$pris*$ypix;
 >  imagesetpixel($im,$sek*$xpix+$offset,$y,$farv);
 >  }
 >  }
 >  }
 > }
 >
 > require 'telefonini.inc';
 > header ("Content-type: image/png");
 > $im = @ImageCreate (GRAFX, GRAFY) or die ("Cannot Initialize new GD image 
 > stream");
 > grafer($_GET['minutter']*60);
 > ImagePng ($im);
 > ImageDestroy($im);
 > ?>
 > ================ Kode slut ================
 >
 > -- 
 > Bertel
 > http://bertel.lundhansen.dk/  FIDUSO: http://fiduso.dk/ Jeg siger tak for jeres hjælp - der er noget og kikke på - jeg vender 
 tilbage nå jeg har fumlet lidt med tingene
 Mvh
 Allan 
            
             |  |  | 
 |  |