移除刻面底部的空间

时间:2019-07-01 11:21:36

标签: r ggplot2 facet-grid

我正在使用#ggplot和facet制作图表,但没有得到想要的结果。 使用下面显示的代码,我总是在标签和条之间留出一些空间

即使添加 switch =“ y” ,我也可以在左侧移动构面标题,但是即使使用 axis.ticks = element_blank(),该空间仍然存在。 / p>

这是我坚持的结果 https://imgur.com/a/neTTpil

编辑 感谢@StéphaneLaurent,我添加了 scale_y_continuous(expand = c(0,0)) 参数解决间隙问题,我现在要做的是将标签替换为小平面,反之亦然

df=data.frame(
    CHANNEL=c("IN","IN","IN","OUT","OUT","OUT"),
    AGEING=c("A","B","C","A","B","C"),  
DELTA=c(4.84904880066170385,4.44191343963553464,3.32480818414322288,1.74081237911025144,1.86749666518452639,1.74672489082969418)
)
ggplot(df, aes(AGEING, DELTA, fill=CHANNEL)) +
    geom_bar(stat="identity") + coord_flip() +
    facet_grid(vars(CHANNEL), space = "free", switch="y") +
    theme(legend.position = "none",
        axis.ticks = element_blank(),
        axis.title.x = element_blank(),
        axis.title.y = element_blank()
        )

1 个答案:

答案 0 :(得分:0)

在第一个问题的注释中提到的expand选项之上,您可以使用facet labelstheme(strip.placement = "outside")放在外面:

ggplot(df, aes(AGEING, DELTA, fill=CHANNEL)) +
  geom_bar(stat="identity") + coord_flip() +
  facet_grid(vars(CHANNEL), space = "free", switch="y") +
  scale_y_continuous(expand = c(0,0)) +
  theme(legend.position = "none",
        axis.ticks = element_blank(),
        axis.title.x = element_blank(),
        axis.title.y = element_blank()
  ) +
  theme(strip.placement = "outside")

结果:enter image description here