通过ggplot2中的另一个变量 - boxplots进行分组

时间:2018-01-29 17:00:03

标签: r ggplot2 boxplot facet-wrap

我正在尝试创建一个boxplot,我可以通过第二个变量的级别对一个变量进行分组。我已经研究了如何进行刻面包装,但是如何在同一块图上得到所有的条形图?

我需要创建以下内容:

x轴:时间段(TP) - 4个等级,1-4。

y轴:CV(变异系数数据)。

箱形图:在x轴的每个级别出现4个箱图。分为第二个因子的4个等级,CS(小腿状态,分类,1 - 4)

我可以使用facet_wrap使用以下代码创建拆分箱图:

p10 <- ggplot(model.data, aes(x = as.factor(TP), y=CV)) +
  geom_boxplot() +
  scale_x_discrete(name = "Time period") +
  scale_y_continuous(name = "Coefficient of variation (CV)\nof adult females' association indicies") +
  ggtitle("CV adult females' association indicies by time period \n split out by calf status, 1 - 4 ") +
  theme(plot.title = element_text(hjust = 0.5)) +
  facet_grid(~CS)
p10

但是如何在一个箱线图上获得这些信息呢?

我试图让它看起来像这样:

enter image description here

1 个答案:

答案 0 :(得分:0)

如果您想在单个地块上绘制箱线图,则应在fill而不是aes中添加facet_wrap

p10 <- ggplot(model.data, aes(x = as.factor(TP), y=CV, fill=CS)) +
  geom_boxplot() +
  scale_x_discrete(name = "Time period") +
  scale_y_continuous(name = "Coefficient of variation (CV)\nof adult females' association indicies") +
  ggtitle("CV adult females' association indicies by time period \n split out by calf status, 1 - 4 ") +
  theme(plot.title = element_text(hjust = 0.5))
p10