[R] Odp: Troubles with the format of dates
Petr PIKAL
petr.pikal at precheza.cz
Thu Nov 27 15:01:29 CET 2008
Hi
r-help-bounces at r-project.org napsal dne 27.11.2008 14:20:17:
> Dear useRs,
>
> I'm struggling again with date-related stuff: I am using R to draw water
> levels at certain measuring
> stations. My data comes as a tab-delimited text file and looks like
this:
>
> DATUM P1 P2
> ...
> 2006-11-16 425.21 423.99
> 2006-12-15 425.12 423.97
> 2007-01-16 425.16 424.06
> ...
>
> (measurements started in July 2004 and still continue on a monthly or
bi-weekly basis)
>
> This is then plotted using this code:
>
> a<-read.table("dummy_data.tab", sep="\t", header=TRUE, na.strings=c(0))
> x<-as.Date(a$DATUM)
>
> plot(x, a$P1, axes=FALSE, xlim=c(as.Date("2004-07-01"),
as.Date("2009-01-01")),
> ylim=c(423,428), col="red", pch=15, type="o", ylab="Kote [m a.s.l.]",
> main="Dummy Plot")
> points(x, a$P2, col="red", pch=17, type="o", lty="dotted")
> axis(2, at=423:428, tck=1, col="gray60")
> axis.Date(1, at=seq(as.Date("2004-07-01"), as.Date("2009-01-01"),
> by="month"), labels=seq(as.Date("2004-07-01"), as.Date("2009-01-01"),
> by="month"), tck=1, col="gray60")
>
> So far, I've been using this type of date format (yyyy-mm-dd) because
that was
> the only way I could
> get the whole thing to work when I started using R. However, living in
> Switzerland, I would prefer
> the dates to read 16.11.2006 i.e. dd.mm.yyyy or 16. Nov. 2006
(preferably
> using German names for
> the months, if possible).
>
> I've used the chron package to convert my dates to day mon year (16 Nov
2006,
> with or without
> spaces), i.e. I replaced the second line of code with:
>
> x<-format(chron(as.character(a$DATUM), format="y-m-d", out.format="day
mon year"))
Although I am not an expert in time/date functions it seems to me that you
just want your labels to be in your preferred format. If it is the case
labels = format(seq(as.Date("2004-07-01"), as.Date("2009-01-01"),
by="month"), "%d.%m.%Y")
in your call to axisDate can help you to achieve it.
Regards
Petr
>
> but then I can't plot them any more, because as.Date() no longer is the
> correct function and R gives
> me an error saying there is an invalid xlim-value. Can someone please
point me
> in the right
> direction?
>
> I could easily change the input data to be in dd.mm.yyyy format, if that
helps.
>
> Thanks for your help,
>
> Kathi
>
>
> --
> DropNet AG - Das Unternehmen fuer Ihren Internet-Auftritt!
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list