【发布时间】:2020-12-21 23:21:23
【问题描述】:
我也有类似的问题:Combine Stacked and Grouped chart ggplot2
我的数据如下所示:
我要创建的是ggplot 中的genom_bar 图表,如下所示:
蓝色区域代表age_group 的gender 部分。我的代码如下所示:
p <- ggplot(data, aes(x=`Green cars are nice`, y=round(percentage, digits = 2), fill = Age_group)) +
geom_bar(stat = "identity", position=position_dodge()) +
facet_grid(.~residence) +
xlab(filename) +
ylab(NULL) +
theme_bw() +
theme(axis.text.x = element_text(size = 12, angle = 45, vjust = 1, hjust=1)) +
theme(
axis.title.x = element_text(size = 14),
axis.text.x = element_text(size = 14),
axis.title.y = element_text(size = 14),
axis.text.y = element_text(size = 14)) +
guides(fill=guide_legend(title=NULL))
p
我需要添加什么才能使条形图看起来像我的绘画图片?我无法理解我发布的 SO 示例中显示的代码。
编辑:
Berlin 18-39 Woman Agree 1.689550205 0.009283243
Berlin 18-39 Woman Disagree 3.942283812 0.0216609
Berlin 18-39 Woman Don't know 0.563183402 0.003094414
Berlin 40-70 Woman Agree 1.689550205 0.009283243
Berlin 40-70 Woman Disagree 3.942283812 0.0216609
Berlin 40-70 Woman Don't know 0.563183402 0.003094414
London 18-39 Woman Agree 1.689550205 0.009283243
London 18-39 Woman Disagree 3.942283812 0.0216609
London 18-39 Woman Don't know 0.563183402 0.003094414
London 40-70 Woman Agree 1.689550205 0.009283243
London 40-70 Woman Disagree 3.942283812 0.0216609
London 40-70 Woman Don't know 0.563183402 0.003094414
Berlin 18-39 Man Agree 1.689550205 0.009283243
Berlin 18-39 Man Disagree 3.942283812 0.0216609
Berlin 18-39 Man Don't know 0.563183402 0.003094414
Berlin 40-70 Man Agree 1.689550205 0.009283243
Berlin 40-70 Man Disagree 3.942283812 0.0216609
Berlin 40-70 Man Don't know 0.563183402 0.003094414
London 18-39 Man Agree 1.689550205 0.009283243
London 18-39 Man Disagree 3.942283812 0.0216609
London 18-39 Man Don't know 0.563183402 0.003094414
London 40-70 Man Agree 1.689550205 0.009283243
London 40-70 Man Disagree 3.942283812 0.0216609
London 40-70 Man Don't know 0.563183402 0.003094414
【问题讨论】:
-
您可以将您的表格发布为代码而不是图像吗?帮助你会更容易。
-
完成。值不同 - 但这并不重要。
-
这里的维度已经用完了。您可以有任何 2 个堆叠、闪避和刻面,但不是全部 3 个。您的选择是在 x 轴上进行交互,因此绘图将如您所愿,除非您需要在单个面板中使用分隔图的线,或者(更容易)将两个面创建为单独的图并使用
cowplot或patchwork将它们缝合在一起 -
@KGB91 实际上,显示数据的正确方法是使用
dput(YOUR_DF),以便我们可以无缝复制/粘贴:) -
谢谢,我不知道
dput- 我一直想知道你是如何在这里输出这些漂亮的数据的......