【发布时间】:2011-07-04 22:39:21
【问题描述】:
我正在 R 中创建一个以日期为 x 轴的图。我的框架有日期,没问题。我正在使用自定义日期范围 - 通过使用固定开始来切断一些最早的数据,并通过使用由其他代码确定的结束来稍微超出最新数据。现在的范围是~47天。这一切都很好。
我的问题是 xaxis 标签只包含一个标签“Feb”,但我希望至少包含 3 个标签,如果不是 5 个。
starttime <- strptime("20110110", "%Y%m%d")
endtime <- strptime("20110226 1202", "%Y%m%d %H%M") #This is actually determined programmatically, but that's not important
xrange <- c(starttime, endtime)
yrange <- c(0, 100)
par(mar=par()$mar+c(0,0,0,7),bty="l")
plot(xrange, yrange, type="n", xlab="Submission Time", ylab="Best Score", main="Top Scores for each team over time")
#More code to loop and add a bunch of lines(), but it's not really relevant
生成的图表如下所示:
我真的只是想要更好的标签。我不太关心它们到底是什么,而是月 + 日,至少有 3 个。
【问题讨论】:
-
好的,看起来axis(1) 或axTicks(1) 可能会自动完成。我只需要弄清楚如何将它从它想要使用的科学记数法更改为“Feb 26”之类的东西......
-
另外,您可能需要考虑查看
matplot(..., type='s'),而不是使用空的plot(),然后单独调用lines()。 -
感谢这个问题,因为它回答了我的问题:使用虚拟绘图调用来设置限制是我发现适用于日期范围/时间数据的唯一方法。