问:在R中的单个图中显示分组和组合的箱形图

时间:2018-09-24 19:40:17

标签: r ggplot2 boxplot

我正在尝试将分组箱图和组合箱图显示为一个图。以iris数据为例:

data(iris)
p1 <- ggplot(iris, aes(x=Species, y=Sepal.Length)) + 
  geom_boxplot()
p1

boxplot

我正在尝试将总体分布与每个类别中的分布进行比较。那么,有没有办法在这三个分组的箱线图的左侧显示所有样本的箱线图?

谢谢。

2 个答案:

答案 0 :(得分:2)

您可以rbind的新版本iris,其中Species对所有行都等于"All",在管道输送到iris之前可以ggplot

p1 <- iris %>% 
        rbind(iris %>% mutate(Species = 'All')) %>% 
        ggplot(aes(x = Species, y = Sepal.Length)) + 
          geom_boxplot()

答案 1 :(得分:2)

是的,您可以为所有物种创建一个列,如下所示:

iris = iris %>% mutate(all = "All Species")
p1 <- ggplot(iris) + 
  geom_boxplot(aes(x=Species, y=Sepal.Length)) +
  geom_boxplot(aes(x=all, y=Sepal.Length))
p1

output