[R] Dateticks
Gabor Grothendieck
ggrothendieck at gmail.com
Wed Jun 15 00:02:55 CEST 2005
On 6/14/05, Bernard L. Dillard <bld at math.umd.edu> wrote:
> Hello. I am having the worst time converting x-axis date ticks to real
> dates. I have tried several suggestions in online help tips and books to
> no avail.
>
> For example, the x-axis has 0, 50, 100, etc, and I want it to have
> "6/17/03", "8/6/03" etc. See attached (sample).
>
> Can anybody help me with this.
>
> Here's my code:
>
> ts.plot(date.attackmode.table[,1], type="l", col="blue", lty=2,ylab="IED
> Attacks", lwd=2,xlab="Attack Dates",main="Daily Summary of Attack
> Mode")
> grid()
>
The default format for dates in chron is the one needed here
so let us use that. (We could alternately use Date class
in defining tt and specify a format string as a second argument
to format in the last line.)
library(chron)
# test data. values are in y and times are in tt.
y <- rnorm(201)
tt <- chron("8/6/03") + seq(0, length = length(y))
# plot without axis
plot(tt, y, xaxt = "n")
# axis with ticks and labels every 50 days
idx50 <- seq(1, length(tt), 50)
axis(1, tt[idx50], format(tt[idx50]), cex.axis = 0.5)
or, to use Date class replace with this:
tt <- as.Date("2003-08-06") + seq(0, length = length(y))
plot(tt, y, xaxt = "n")
idx50 <- seq(1, length(tt), 50)
axis(1, tt[idx50], format(tt[idx50], "%m/%d/%y), cex.axis = 0.5)
More info on working with dates is in R News 4/1.
More information about the R-help
mailing list