首页 > 解决方案 > 在图表和构面标题之间添加间隙

问题描述

如果您使用以下内容创建图表:

ggplot(iris2, aes(x=variable, y=value, color=Species))+
          geom_point()+
          facet_wrap(~Species)+
  scale_y_continuous(limits=c(0,10))

然后你得到下面的图像。
例子

如何在 y 轴的结束位置(其极限)和构面标题之间添加一个空格(如果你愿意的话,一个白色的间隙)?我已经模拟了我在下面的意思和我想要的输出。

需要注意的是,我已经在代码中手动设置了 y 的限制,这就是我实际代码的设置方式。

期望的

我应该澄清一下,我希望 y 轴LINE以 10 结束。这个想法是让分面标题“浮动”在每个图表上方。如果我尝试添加hline这样的作品,但我不知道如何让 y 轴线在 10 处结束。

标签: rggplot2facet

解决方案


一种可能的解决方案是添加一个白色矩形,annotate以模仿您的构面标签“浮动”的感觉:

library(tidyverse)

iris %>% pivot_longer(-Species) %>%
  ggplot(aes(x=name, y=value, color=Species))+
  geom_point()+
  facet_wrap(~Species)+
  scale_y_continuous(limits=c(0,10))+
  annotate(geom = "rect",xmin = -Inf,xmax = Inf, ymin = 10, ymax = Inf, fill = "white")

在此处输入图像描述

它回答了你的问题吗?


推荐阅读