如何使用 R 中的 ggplot2 创建带有密度的堆叠图?


要使用 ggplot2 创建带有密度的堆叠图,我们可以使用 ggplot2 软件包的 geom_density 函数和 position="stack"。例如,如果我们有一个名为 df 的数据框,其中包含两列,如 x 和 y,其中 x 是分类的,y 是数字的,那么可以通过使用以下命令创建带有密度的堆叠图 −

ggplot(df,aes(y,y=..density..))+geom_density(aes(fill=x),position="stack")

示例

考虑以下数据框 −

在线演示

> x<-sample(LETTERS[1:4],20,replace=TRUE)
> y<-rpois(20,5)
> df<-data.frame(x,y)
> df

输出

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

加载 ggplot2 软件包并创建带 y 轴密度的堆叠图 −

> library(ggplot2)
> ggplot(df,aes(y,y=..density..))+geom_density(aes(fill=x),position="stack")

输出

更新时间: 2021 年 3 月 6 日

351 次浏览

开启你的 职业生涯

完成课程获得认证

开始吧
广告
© . All rights reserved.