使用 R 中的 ggplot2 创建 Y 轴上带有百分比的堆积条形图。
r programmingserver side programmingprogramming更新于 2024/11/6 23:45:00
要使用 R 中的 ggplot2 创建 Y 轴上带有百分比的堆积条形图,我们可以在 geom_bar 中使用填充参数,并将第二个分类变量的位置设置为填充。
例如,如果我们有一个名为数据框的数据框,其中包含两个分类列,例如 C1 和 C2,那么我们可以使用下面提到的命令 − 创建 Y 轴上带有百分比的堆积条形图
ggplot(df,aes(C1))+geom_bar(aes(fill=C2),position="fill")
示例
以下代码片段创建了一个示例数据框 −
f1<-sample(LETTERS[1:3],20,replace=TRUE) f2<-sample(letters[1:2],20,replace=TRUE) df<-data.frame(f1,f2) df
创建以下数据框
f1 f2 1 B b 2 C a 3 A b 4 A a 5 A a 6 C a 7 B a 8 B a 9 C b 10 B a 11 A a 12 C a 13 A b 14 C b 15 C a 16 B b 17 A b 18 B a 19 A a 20 C a
要加载 ggplot2 包并在上面创建的数据框中为 f1 和 f2 列创建堆积条形图,Y 轴上显示百分比,请将以下代码添加到上面的代码片段中 −
f1<-sample(LETTERS[1:3],20,replace=TRUE) f2<-sample(letters[1:2],20,replace=TRUE) df<-data.frame(f1,f2) library(ggplot2) ggplot(df,aes(f1))+geom_bar(aes(fill=f2),position="fill")
输出
如果将上述所有代码片段作为单个程序执行,则会生成以下输出 −