我仍然不确定这是否完全符合您的要求,但如果您要求在两个单独的变量中计算计数(或部分),您可以使用
facet_wrap
将两组分开。
(注意,所有这些都与
theme_set(theme_bw())
因为我更喜欢这种类型的情节。)
使用内置数据集
mtcars
您可以通过以下方式获得计数:
mtcars %>%
ggplot(aes(x = factor(cyl), fill = factor(gear))) +
geom_bar() +
facet_wrap(~vs)
或排序反转为:
mtcars %>%
ggplot(aes(x = factor(vs), fill = factor(gear))) +
geom_bar() +
facet_wrap(~cyl, labeller = label_both)
也可以使用绘制组内分布
position = "fill"
mtcars %>%
ggplot(aes(x = factor(vs), fill = factor(gear))) +
geom_bar(position = "fill") +
facet_wrap(~cyl, labeller = label_both) +
scale_y_continuous(name = "Within group Percentage"
, labels = scales::percent)