繁体   English   中英

如何创建一个堆叠条形图,其中每个条形都是不同的变量? 在 R

[英]How to create a stacked barchart where each bar is a different variable? In R

我正在尝试创建一个带有 5 个条形图的条形图,每个条形图代表一个不同的变量 每个变量都是一个具有相同数量的分类级别 (4) 的因子。 我希望将它们堆叠起来,以便“填充”是级别(即 1、2、3 或 4)。 每个条形的总和应为 100%,条形内的每个堆叠级别应代表 100% 的比例。

这是我第一次尝试reprex,所以希望它有效。

df <- structure(list(icap_1 = structure(c(1L, 2L, 2L, 2L, 1L, 2L, 2L, 
2L, 3L, 4L), .Label = c("1", "2", "3", "4"), class = "factor"), 
    icap_2 = structure(c(2L, 1L, 1L, 2L, 1L, 2L, 2L, 1L, 2L, 
    2L), .Label = c("1", "2", "3", "4"), class = "factor"), icap_3 = structure(c(3L, 
    2L, 2L, 2L, 2L, 3L, 2L, 2L, 3L, 2L), .Label = c("1", "2", 
    "3", "4"), class = "factor"), icap_4 = structure(c(2L, 2L, 
    2L, 2L, 2L, 3L, 2L, 2L, 3L, 2L), .Label = c("1", "2", "3", 
    "4"), class = "factor"), icap_5 = structure(c(2L, 1L, 2L, 
    2L, 1L, 2L, 1L, 1L, 3L, 2L), .Label = c("1", "2", "3", "4"
    ), class = "factor")), row.names = c(NA, 10L), class = "data.frame")

本质上,这只是为了可视化每个变量的分布。 我看过其他程序的示例,但似乎无法在网上找到示例。 非常感谢任何提示!

我希望我能正确理解你的问题。
您可以将变量gather在一起,使它们易于被ggplot解释。

df %>% gather() %>% ggplot(aes(key, value)) + geom_boxplot()

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM