← Back to team overview

sslug-teknik team mailing list archive

Re: Gnuplot - hvordan håndtere man datoer pænt.

 

Jesper Krogh <jesper@xxxxxxxx> writes:

> Jeg har et datasæt med:
> 
> 19.07.03 10
> 20.07.03 12
> 22.07.03 11
> 
> og jeg vil gerne have dem pænt plottet. 
> 
> Det vil sige, der skal være en enhed på X-aksen mellem d. 19 og d. 20 og
> 2 til den 22.. Dette kan jeg nemt løse ved at konvertere dem til
> absoluttedatoer fra et eller andet tidspunkt. Men jeg vil også helst
> have den "human readable" dato på grafen. 

Min erfaring er at gnuplot ikke er særlig god til at håndtere
datoer. Som Anders har sagt kan man let forklare gnuplot at x-aksen er
datoer, men hvis man har data over en længere periode, synes jeg let de
datoer der kommer til at stå på x-aksen bliver mærkelige.

F.eks. har jeg nogle gange ville lave grafer over nogle meget ujævnt
fordelte (flere punkter samme dag, og måneder imellem andre punkter -
jeg ved ikke om det betyder noget) data over et år ad gangen. For at få
en pæn x-akse, har jeg:

set xdata time
set timefmt "%d/%m-%Y"

set xrange ["01/01-2002":"31/12-2002"]
set format x "%d/%m"

set xtics nomirror ("01/01-2002", "01/02-2002", "01/03-2002",
"01/04-2002", "01/05-2002", "01/06-2002", "01/07-2002", "01/08-2002", 
"01/09-2002", "01/10-2002", "01/11-2002", "01/12-2002", "31/12-2002")

Hvis jeg udelader den sidste linie, vælger gnuplot at markere 01/01, 01/02,
01/04, 01/05, 01/07, 01/08, 01/10 og 01/11. Det synes jeg er lige lovlig
fjollet. 

.Henrik

-- 
Registreret Linux bruger nummer 61622
Registrer dig selv på http://counter.li.org/


References