如何在R中使用ggplot2根據閾值對散點圖點著色?


要使用ggplot2根據閾值對散點圖點著色,我們首先需要定義一個包含閾值列,然後我們可以在aes中使用該列進行著色。可以使用cut函式建立閾值列。

檢視下面給出的示例,瞭解如何操作。

示例

以下程式碼片段建立一個示例資料框:

x<-rpois(20,5)
y<-rpois(20,2)
df<-data.frame(x,y)
df

輸出

建立了以下資料框:

   x  y
1  6  0
2  5  5
3  7  2
4  4  0
5  4  1
6  5  0
7  9  3
8  4  1
9  7  1
10 5  2
11 4  3
12 8  3
13 4  0
14 9  0
15 5  1
16 3  3
17 7  1
18 2  2
19 5  3
20 5  1

要根據y列中的值建立閾值列,請將以下程式碼新增到上面的程式碼片段中:

x<-rpois(20,5)
y<-rpois(20,2)
df<-data.frame(x,y)
df$Threshold<-cut(df$y,breaks=c(-Inf,2,Inf),labels=c("<=2",">2"))
df

輸出

如果將以上所有程式碼片段作為一個程式執行,則會生成以下輸出:

   x  y Threshold
1  6  0  <=2
2  5  5  >2
3  7  2  <=2
4  4  0  <=2
5  4  1  <=2
6  5  0  <=2
7  9  3  >2
8  4  1  <=2
9  7  1  <=2
10 5  2  <=2
11 4  3  >2
12 8  3  >2
13 4  0  <=2
14 9  0  <=2
15 5  1  <=2
16 3  3  >2
17 7  1  <=2
18 2  2  <=2
19 5  3  >2
20 5  1  <=2

要載入ggplot2包並在x和y之間建立散點圖,並根據閾值列顯示不同顏色的點,請將以下程式碼新增到上面的程式碼片段中:

library(ggplot2)
ggplot(df,aes(x,y,color=Threshold))+geom_point()

輸出

如果將以上所有程式碼片段作為一個程式執行,則會生成以下輸出:

更新於:2021年11月3日

2K+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告