微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何制作与 ggplot 交互的百分比堆积条形图?

如何解决如何制作与 ggplot 交互的百分比堆积条形图?

假设我们的数据框是 mtcars[,c("vs","am")]。我想要一个百分比堆积的条形图/条形图,有 2 列,一个用于 vs,另一个用于 am,每一个都有 2 个组,==1==0,但分成这样的一种查看 2 列的方式,我会观察 4 组。让我们看看:

library(dplyr)
mtcars %>% select(vs,am) %>% sjmisc::frq(interaction(vs,am))
interaction(vs,am) <categorical>
# total N=32  valid N=32  mean=0.48  sd=0.51

Value |  N | Raw % | Valid % | Cum. %
-------------------------------------
 0.00 | 12 | 37.50 |   37.50 |  37.50
 0.10 |  6 | 18.75 |   18.75 |  78.12
 1.00 |  7 | 21.88 |   21.88 |  59.38
 1.10 |  7 | 21.88 |   21.88 | 100.00
 <NA> |  0 |  0.00 |    <NA> |   <NA>

将有一个水平部分,其中两列的组均为 1,对应于 21.88%。 vs==1am==0 的另一个水平部分将是另一个 21.88%。将有第三部分对应于 18.75%,其中 vs==0am==1 以及最后一个水平部分,其中两列中的组都为 0,百分比为 37.5%。在 y 轴将指示累积 N 或累积百分比。

是否有 ggplot 或任何扩展名(可能像 ggmosaicComplexUpset)?

谢谢!

PS:问题来自函数stablelearner::image,但它是用基R实现的,我不知道如何翻译。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。