如何使用 ggplot2 在 r 中创建分组箱线图


箱线图对于可视化数据集的五位数摘要非常有用,其中包括:

  • 最低限度
  • 第一个四分位数
  • 中位数
  • 第三个四分位数
  • 最大值

相关:箱线图的简要介绍

幸运的是,使用ggplot2可视化库可以轻松在 R 中创建箱线图。

它还涉及创建按数据集中的特定变量分组的箱线图。例如,假设我们有以下数据集,显示来自三个不同团队的 150 名篮球运动员基于两种不同的训练计划的效率提升:

 #define variables
team=rep(c('A', 'B', 'C'), each =50)
program=rep(c('low', 'high'), each =25)
increase=seq(1:150)+sample(1:100, 100, replace= TRUE )

#create dataset using variables
data=data.frame(team, program, increase)

#view first six rows of dataset 
head(data)

  team program increase
1 A low 62
2 A low 37
3 A low 49
4 A low 60
5 A low 64
6 A low 105

我们可以使用以下代码创建箱线图,显示球员效率的提高,按球队分组并根据训练计划进行填充:

 library (ggplot2)

ggplot(data, aes(x=team, y=increase, fill=program)) + 
  geom_boxplot ()

R 中的聚类箱线图

我们可以使用类似的语法来创建箱线图,显示球员效率的提高,按训练计划分组并按团队填充:

 library (ggplot2)

ggplot(data, aes(x=program, y=increase, fill=team)) + 
  geom_boxplot () 

R 中的聚类箱线图

类似的替代方法是使用faceting ,其中每个子组都显示在自己的面板中:

 library (ggplot2)

ggplot(data, aes(x=team, y=increase, fill=program)) + 
  geom_boxplot () +
  facet_wrap (~program) 

R 中按构面分组的箱线图

根据您正在使用的数据,创建构面可能会也可能不会满足您的可视化需求。

其他资源

如何删除 R 箱线图中的异常值
如何在 ggplot2 中创建并排图
最佳 ggplot2 主题的完整指南

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注