繁体   English   中英

ggplot2:如何使用geom_bar减小宽度和条之间的间距

[英]ggplot2 : How to reduce the width AND the space between bars with geom_bar

我知道可以使用width参数更改geom_bar中条的width 确实可以,但是随后会在条之间产生更大的间隙。 有没有办法手动将拉杆推得更近些? 我应该以某种方式操纵轴吗?

这是一个示例,将右侧的宽度更改为0.3,以获得所需的条形宽度。

library(tidyverse)
library(gridExtra)

p1 <- ggplot(iris, aes(Species, Petal.Length)) + geom_bar(stat="summary")
p2 <- ggplot(iris, aes(Species, Petal.Length)) + geom_bar(stat="summary", width=0.3)
grid.arrange(p1,p2,nrow=1)

在此处输入图片说明

注意:我知道这个问题与此类似,但是缩小差距的答案并不明显。

如何在geom_bar中更改条之间的间距?

我将调整图的纵横比,并让ggplot自动为条形分配正确的宽度以及它们之间的间隙:

  ggplot(iris, aes(Species, Petal.Length)) + 
      geom_bar(stat="summary", width=0.4) +
      theme(aspect.ratio = 2/1)

产生这个:

在此处输入图片说明

与其将宽度变小而不是使宽度变窄,而是增加了条间的间距,不如将宽度设置width = 1来消除之间的所有width = 1 。*

ggplot(iris, aes(Species, Petal.Length, fill=Species)) + geom_bar(stat="summary", width=1)

在此处输入图片说明

默认值为0.9,因此通过设置width = 0.95可以获得很小的空间

ggplot(iris, aes(Species, Petal.Length, fill=Species)) + geom_bar(stat="summary", width=0.95)

在此处输入图片说明

  • 使用fill=Species ,我自由添加了颜色,以在它们之间没有空格时帮助查看不同的条。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM