在plot.ts中添加点,设置开始,结束和频率

问题描述 投票:4回答:2

我在向plot.ts添加点时遇到问题。如果我创建ts对象,如下例所示,一切都很好,并将点添加到绘图中。

data <- ts(rnorm(100))
plot(data)
ind <- c(1,10,67)
points(ind, data[ind], pch = 19, col = 'red')

但是当我这样做时(我希望在X轴上有日期,所以我使用开始,结束和频率参数。),点不会出现在图上:

data <- ts(rnorm(100), start = c(1996,1), end = c(2004,4), frequency = 12)
plot(data)
ind <- c(1,10,67)
points(ind, data[ind], pch = 19, col = 'red')

是否有任何选项可以添加这些点或添加日期到第一个示例?

PS。我几乎可以肯定,我曾经设法通过参考特定日期的时间序列值来增加一点,但现在我无法将它带回来。

r plot time-series
2个回答
4
投票

这对我有用:

data <- ts(rnorm(100), start = c(1996,1), end = c(2004,4), frequency = 12)
plot(data)
ind <- 1996 + c(0,9,66)/12
points(ind, data[c(1,10,67)], pch = 19, col = 'red')

4
投票

我宁愿使用zoo包:

data <- as.zoo(data)
plot(data)
ind <- c(1,10,67)
points(data[ind], pch = 19, col = 'red')

这样你就可以使用索引而不必担心日期(在我看来这就是你想要的)。

© www.soinside.com 2019 - 2024. All rights reserved.