2014-06-25 728 views
2

我有一些时间序列,其中200个值与一个区间内的200个不同时间相关联。在绘制线条图之后,我想手动告诉R仅显示我指定的某些特定值的x轴刻度。然后,我想指定一个不同的名称,即日期字符串,在这些刻度上绘制而不是数字值。我已经看过axis(),但是我很难将整个过程放在一起。我想绘制整个线条图,而不仅仅是我指定的x标签。R指定线图的x轴刻度

例如: 如果我有: Y = C(227,342,121,275,354,999,221,475,867,347,541) X = C(1,5,10, (x,y,“l”),但是只有在c(10,30,40)处有x轴刻度(tick)的情况下,我需要plot(x,y,“l”)。对于这些刻度,我想分别将c(“March”,“June”,“August”)与这三个刻度的标签作为标签。

回答

2

您需要使用手动轴创建。这可以通过以下方式完成:(1)禁用自动轴创建(调用plot时使用xaxt='n');(2)对axis函数进行自定义调用。

这是我如何将着手:

y = c(227, 342, 121, 275, 354, 999, 221, 475, 867, 347, 541) 
x = c(1, 5, 10, 15, 20, 25, 30 ,35, 40, 45, 50) 
plot(x, y, "l", xaxt='n') 
axis(1,at=c(10,30,40),labels=c("March", "June", "August")) 

在下面的情节得到的:

enter image description here

+0

这是完美的,正是我想要的。只是后续,他们是否可以垂直旋转标签?日期很长。谢谢 – mt88

+0

哟,您可以在调用'axis'时使用'las = 2'选项。 – Jealie