如果我做一个如下的直线图,我会得到一个很好的x轴刻度标签,表示1月,2月等。
plot(y=c(0, 10), x=c(as.Date("2013-1-1"), as.Date("2013-12-31")))
如何获得相同的行为,但是使用空图框?为什么不在下面工作?我得到了带有数字标记的刻度标记,而不是标记为月份的标记。
plot(0, xlim=c(as.Date("2013-1-1"), as.Date("2013-12-31")), ylim=c(0, 10), type="n")
答案 0 :(得分:1)
plot(y=0, x=as.Date("2013-1-1"), xlim=c(as.Date("2013-1-1"), as.Date("2013-12-31")), ylim=c(0, 10), type="n")
可能会保留x轴上的日期。
答案 1 :(得分:1)
您只想在type = "n"
来电中plot()
:
plot(y=c(0, 10), x=c(as.Date("2013-1-1"), as.Date("2013-12-31")), type = "n")
"n"
意味着什么都没有。
你第二次尝试的原因:
plot(0, xlim=c(as.Date("2013-1-1"), as.Date("2013-12-31")), ylim=c(0, 10),
type="n")
不起作用的是底层绘图代码将您作为xlim
参数传递的Date对象视为数字(自纪元以来的天数是"Date"
类的定义方式,以及内部存储为数字)。如果我们这样做,我们可以看到正在发生的事情:
> pretty(as.numeric(c(as.Date("2013-1-1"), as.Date("2013-12-31"))))
[1] 15700 15800 15900 16000 16100