如何在 R 中建立每個條形總和為 1 或 100% 的堆疊條形圖?


堆疊條形圖由一個條形中的多個條形組成,它顯示類別變數的一個類別及其級別。通常,堆疊條形圖建立為每個類別中級別的數量,但如果我們想為類別變數的各個類別建立百分比,則也可以做到。我們可以使用 prop.table 函式為每個類別建立級別的比例,然後建立條形圖。

示例

考慮以下資料幀 -

> set.seed(99)
> x1<-sample(1:100,5)
> x2<-sample(1:100,5)
> x3<-sample(1:100,5)
> df<-data.frame(x1,x2,x3)
> df
x1 x2 x3
1 48 98 68
2 33 32 9
3 44 13 82
4 22 20 88
5 62 31 30

建立簡單的堆疊條形圖 -

> data<-rbind(x1,x2,x3)
> prop.table(data)
[,1] [,2] [,3] [,4] [,5]
x1 0.07058824 0.04852941 0.06470588 0.03235294 0.09117647
x2 0.14411765 0.04705882 0.01911765 0.02941176 0.04558824
x3 0.10000000 0.01323529 0.12058824 0.12941176 0.04411765
> barplot(data)

輸出

建立一個每個條形總和為 1 的條形圖 -

> barplot(prop.table(data,2))

輸出

更新於: 12-Aug-2020

308 次觀看

開啟您的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.