如何调整 ggplot2 中条形图之间的间距(附示例)


您可以使用以下方法来调整 ggplot2 条形图中条形之间的间距:

方法一:调整条形图中条形间距

 ggplot(df, aes(x=x_variable)) +
  geom_bar(width= .4 )

条形之间的默认宽度为0.9

宽度越接近1 ,条形就越接近。宽度越接近0 ,条形展开得越多。

方法 2:调整分组条形图中条形之间的间距

 ggplot(df, aes(x=x_variable, y=y_variable, fill=fill_variable)) +
  geom_bar(width= .5 , stat=' identity ', position=position_dodge( .7 ))

宽度值控制簇之间的间距,而position_dodge()值控制同一簇内条形之间的间距。

以下示例展示了如何在 R 中使用以下数据框实际使用每种方法:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C'),
                 position=c('G', 'G', 'F', 'G', 'F', 'F', 'F', 'G'),
                 points=c(12, 22, 24, 23, 20, 15, 11, 30))

#view data frame
df

  team position points
1 AG 12
2 AG 22
3 AF 24
4 BG 23
5 BF 20
6 BF 15
7 CF 11
8 CG 30

示例 1:调整条形图中条形之间的间距

以下代码展示了如何使用默认宽度间距0.9创建条形图来可视化每个团队的出现次数:

 library (ggplot2)

#create bar plot with default spacing
ggplot(df, aes(x=team)) +
  geom_bar()

以下代码演示了如何通过将width参数的值减小到0.4来增加条形之间的间距:

 library (ggplot2)

#create bar plot with increased spacing
ggplot(df, aes(x=team)) +
  geom_bar(width= .4 ) 

调整ggplot2中条形之间的间距

通过减小宽度参数的值,我们增加了条形之间的间距。

示例 2:调整分组条形图中条形之间的间距

以下代码展示了如何创建分组条形图来可视化按球队和位置划分的总得分:

 library (ggplot2)

#create clustered bar plot with default spacing
ggplot(df, aes(x=team, y=points, fill=position)) +
  geom_bar(stat=' identity ', position=' dodge ')

下面的代码展示了如何增加集群条形之间的间距以及同一簇内条形之间的间距:

 library (ggplot2)

#create clustered bar plot with increased spacing
ggplot(df, aes(x=team, y=points, fill=position)) +
  geom_bar(width= .5 , stat=' identity ', position=position_dodge( .7 )) 

通过减小宽度值,我们增加了簇之间的间距。

通过减小position_dodge()的值,我们增加了同一簇内条形之间的间距。

请随意调整这两个参数的值,以使条形图完全按照您想要的方式显示。

其他资源

以下教程解释了如何在 ggplot2 中执行其他常见任务:

如何对 ggplot2 条形图中的条形进行排序
如何在ggplot2中重新排列堆积条形图中的条形
如何更改ggplot2中堆积条形图的条形颜色

添加评论

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