如何在 R 中使用 ggplot2 建立帶有按照資料順序排列的分面的條形圖?


由於視覺化是資料分析的重要組成部分,因此我們應確保以使用者易於閱讀的形式建立圖表。為此,條形圖中的分面有助於我們瞭解另一個因子的因子變數級別。要建立此類條形圖,我們可以使用 ggplot2 包的 facet_grid 函式。

示例

考慮以下資料框:

> set.seed(99)
> y<-sample(1:100,50,replace=TRUE)
> class<-rep(c(letters[1:5]),times=10)
> quantity<-as.factor(rep(c(5,10,15,20,25),each=10))
> df<-data.frame(y,class,quantity)

這裡,我們有 class 和 quantity 作為因子變數。假設我們想使用 quantity 作為分面。

載入 ggplot2 包:

> library(ggplot2)

在 X 軸上使用 class,在 Y 軸上使用 y 建立沒有分面的圖表:

> ggplot(df,aes(class,y))+
+ geom_bar(stat="identity")

輸出

在 X 軸上使用 class,在 Y 軸上使用 y,並以 quantity 作為分面建立圖表:

> ggplot(df,aes(class,y))+
+ geom_bar(stat="identity")+
+ facet_grid(.~quantity)

輸出

更新於: 2020年8月10日

2K+ 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.