如何绘制这个时间序列数据

时间:2015-02-03 12:37:30

标签: r plot time-series

我有以下数据显示不同日期的变量值。我该如何绘制这些数据?数据如下所示。 b栏上升了2004年。

       a          b
1     44 1990-12-06
2      5 1990-12-06
3     17 1992-04-18
4     64 1992-04-18
5     58 1992-11-27
6      0 1992-11-27
7     52 1992-12-26
8      4 1992-12-26
9    277 1993-01-02
10    52 1993-01-23
11     7 1993-01-23
...

a& b列可以互换。我想将此作为从开始年到结束年的表现。

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:4)

简单的时间序列图是否符合您的要求?

foo <- structure(list(a = c(44, 5, 17, 64, 58, 0, 52, 4, 277, 52, 7), 
    b = structure(c(7644, 7644, 8143, 8143, 8366, 8366, 8395, 
    8395, 8402, 8423, 8423), class = "Date")), .Names = c("a", 
"b"), row.names = c(NA, -11L), class = "data.frame")
plot(foo$b,foo$a,type="o")

timeseries

如果您有许多值,我建议您将它们绘制成灰色(这样您就不会丢失原始数据)并用平滑曲线覆盖它们,如下所示:

foo <- data.frame(a=rnorm(366),b=as.Date("2015-01-01")+(0:365))
plot(foo$b,foo$a,type="o",col="grey")
lines(foo$b,predict(loess(a~as.numeric(b),foo)),lwd=2)

timeseries with loess 顺便说一下,this textbook section on graphical time series tools可能会有所帮助。