有些灵魂请解释为什么xlim不会在下面的代码片段中确认POSIXct对象:
y <- rnorm(3)
x <- c("2012-01-01", "2013-01-01", "2014-01-01")
x <- as.POSIXct(x)
plot(y, xlim=range(x))
这导致一个空图,其xlims不是日期,而是数字等价物,并出现以下错误:
Error in plot.window(...) : invalid 'xlim' value
我搜索了旧帖子,以下据称有些版本的作品
plot(y, xlim=seq(as.POSIXct("2012-01-01"), as.POSIXct("2014-01-01"), by="month")
但是当我尝试时,我收到了同样的错误。我决定以任何方式在日期,最好是几个月内命名我的xtick标签。
上面的代码段显然是无足轻重的,以证明我的问题,但我已经验证我的实际x变量是一个POSIXct对象,其日期格式为YYYY-MM-DD,而我的y是一个长度等于x的向量。
答案 0 :(得分:2)
您可以尝试
plot(x,y, xaxt='n')
axis.POSIXct(side=1, x, format='%Y-%m-%d')
其他选项是
library(xts)
x1 <- xts(y, order.by=x)
plot(x1, xlim=range(index(x1)), type='p')