如何使用 R 中的 ggplot2 繪製多重時間序列?


對於一個時間點,我們可能有多個時間序列資料,這可能是多個城市的的天氣、多個產品的價格變動、不同地點的需求預期,或任何隨時間變化且針對多個事物或地點進行衡量的資料。如果我們有此類時間序列資料,那麼我們需要在單一繪圖中繪製該資料,而這可以透過 ggplot2 包的 geom_line 函式來實現。

示例

考慮以下資料框架 −

 線上演示

> x1<-1:10
> y1<-rnorm(10)
> df1<-data.frame(x1,y1)
> df1

輸出

   x1 y1
1 1 -0.1165387
2 2 -0.9084062
3 3 0.4696637
4 4 1.5597274
5 5 -0.1101060
6 6 1.4060137
7 7 -0.8310496
8 8 -0.2272508
9 9 -0.2153751
10 10 0.9463936

示例

 線上演示

> x2<-1:10
> y2<-rnorm(10)
> df2<-data.frame(x2,y2)
> df2

輸出

   x2 y2
1 1 -1.0545341
2 2 0.3791710
3 3 -1.5611182
4 4 -1.1212776
5 5 -0.7441233
6 6 -0.5665797
7 7 -1.1247473
8 8 -0.3644471
9 9 0.8933615
10 10 0.8809048

示例

 線上演示

> x3<-1:10
> y3<-rnorm(10)
> df3<-data.frame(x3,y3)
> df3

輸出

   x3 y3
1 1 0.53114394
2 2 0.76319036
3 3 -0.09477086
4 4 0.54543062
5 5 1.57865385
6 6 -0.72168934
7 7 0.57577687
8 8 0.03108040
9 9 -0.97440541
10 10 -0.09145164

使用 ggplot2 為上述三個資料框架建立一個單一時間序列繪圖 −

> library(ggplot2)
>
ggplot(df1,aes(x1,y1))+geom_line(color="blue")+geom_line(aes(x2,y2),color="black")+
geom_line(aes(x3,y3),color="green")+xlab("Time")+ylab("Rate")

輸出

更新於: 2020 年 9 月 4 日

1000+ 次瀏覽

啟動您的 職業

取得認證方法是完成課程

開始
廣告
© . All rights reserved.