使用ggplot自定义堆叠条之间的空间[关闭]

问题描述 投票:0回答:1

我测量了 2 个不同日期的治疗结果,并将它们放入堆叠的条形图中。现在我想要相同处理(2 个不同天)的两个堆叠条形,彼此更接近。所以我希望控制 3dpi 和控制 4dpi 彼此更接近,并且控制 4dpi 和 S 0.01 3dpi 之间有更大的空间,等等。

我已经尝试过调整宽度。我还尝试添加一个“空白”列。

r ggplot2 width distance stacked
1个回答
0
投票

如果没有可重现的示例,很难确切地知道你想要什么,但似乎你可能想通过在条形组之间添加额外的空间来指示数据分组。如果这就是你想要的,你可以这样做

  1. 使用
    facet_wrap()
    中的
    facet_grid()
    ggplot2
    函数将图表分成几组,然后
  2. 使用
    panel.spacing
    函数的
    theme()
    参数来控制每组条形之间的间距。

例如:

library(ggplot2)

# Create some 'toy' data that can be used to illustrate how to make this chart. 
# You should replace this with your own data.
treatments <- tibble::tribble(
  ~day, ~group, ~value,
  1, "treatment", 6,
  1, "control", 5,
  2, "treatment", 7,
  2, "control", 6
)

ggplot(treatments, aes(x = day, y = value)) +
  geom_col() +
  # `facet_grid()` splits the data into multiple small charts based on the 
  # column in the data that you specify using the `cols` argument. Note that 
  # the `vars()` helper function is needed here so that `facet_grid()` 
  # understands that `group` is the name of a column in the data.
  facet_grid(cols = vars(group)) +
  theme_minimal() +
  # The `panel.spacing` argument sets the space between the different groups of 
  # bars. You can use the `unit()` helper function to specify the space in many 
  # common units of length, such as points ("pt"), centimetres ("cm"), etc.
  theme(panel.spacing = unit(24, "pt"))

创建于 2024-04-03,使用 reprex v2.1.0

如果这不是您想要的,请在您最初的问题中添加更多详细信息,了解您希望图表是什么样子

© www.soinside.com 2019 - 2024. All rights reserved.