如何使用 R 中的 ggplot2 為資料幀子集建立一個線形圖?


子集是 R 中一件不困難的事,但如果我們把自己的程式碼寫的短一些,那麼這是一個很繁瑣的任務,因為我們必將在程式碼之間插入程式碼,這會造成混亂。所以,我們在一個程式碼中寫另外一個程式碼時必須非常小心。透過使用 ggplot2 的 ggplot 函式,可以使用子集函式來建立使用子集資料幀的直線。

示例

 線上演示

考慮下面的資料幀 -

set.seed(99)
x1<-rep(c("Sample1","Sample2","Sample3","Sample4"),times=5)
x2<-rpois(20,5)
x3<-runif(20,2,5)
df<-data.frame(x1,x2,x3)
df

輸出

   x1 x2 x3
1 Sample1 5 2.683710
2 Sample2 2 2.241572
3 Sample3 6 4.464855
4 Sample4 11 3.773342
5 Sample1 5 4.320167
6 Sample2 9 3.050258
7 Sample3 6 2.018184
8 Sample4 4 4.443519
9 Sample1 4 2.003538
10 Sample2 3 2.602071
11 Sample3 5 3.500318
12 Sample4 5 2.970510
13 Sample1 3 3.040351
14 Sample2 6 3.636462
15 Sample3 6 2.121470
16 Sample4 6 3.331542
17 Sample1 4 4.072941
18 Sample2 2 4.471554
19 Sample3 2 3.820360
20 Sample4 3 4.932325
library(ggplot2)
ggplot(subset(df,x1 %in% c("Sample2","Sample3")))+
+ geom_line(aes(x2,x3,group=x1,colour=x1))

輸出

ggplot(subset(df,x1 %in% c("Sample1","Sample4")))+ 
+ geom_line(aes(x2,x3,group=x1,colour=x1))

輸出

為三個樣本(Sample1、Sample2 和 Sample3)建立繪圖 -

ggplot(subset(df,x1 %in% c("Sample1","Sample2","Sample3")))+
+ geom_line(aes(x2,x3,group=x1,colour=x1))

輸出


更新於:21-8-2020

540 次瀏覽

開啟你的職業生涯

完成課程獲取認證

開始學習
廣告
© . All rights reserved.