[Rd] plot(date, y) versus plot(y ~ date)
Duncan Murdoch
murdoch@stats.uwo.ca
Fri Feb 14 20:17:02 2003
If "time" is a POSIXlt variable and "y" is numeric, then plot(time, y)
works but plot(y ~ time) doesn't.
For example,
time <- as.POSIXlt( Sys.time() + 1:100)
y <- rnorm(100)
plot(time,y) # succeeds
plot(y ~ time) # fails
The reason for this is that there's a plot.POSIXlt method that
converts time to a POSIXct variable, and most of the plotting
machinery works fine on those. Manual conversion to POSIXct will also
make the plot(y ~ time) version work.
Should this conversion be made automatically? It looks like doing
something in the internal implementation of model.frame would be
necessary. It's probably not a good idea to do something specific to
POSIXlt types, but what about attempting to coerce any unrecognized
object to double? It's easy to implement as.double.POSIXlt.
Duncan Murdoch