我具有以下类型的绘图,并希望将每个带状文本保持在各个构面框上方,作为某种“标题”,但在strip.background周围没有默认的灰色背景和黑色边框。我将其涂成白色,接近我想要的颜色,但希望strip.background的底部边缘或panel.border的顶部边缘为黑色。

library(ggplot2)

ggplot(mtcars, aes(mpg, hp)) + geom_point() +
    facet_wrap(~carb, ncol = 3) + theme_bw() +
    theme(panel.grid.major = element_blank(),
        panel.grid.minor = element_blank(),
        strip.background = element_rect(colour="white", fill="white"),
        panel.border = element_rect(colour = "black"))

最佳答案

如果您为element_blank()设置strip.background并为element_rect(colour="black", fill = NA)保留panel.border,则panel.border的顶部边缘将为黑色。
正如@adrien指出的那样,应将panel.background的fill设置为NA以避免覆盖点(已将theme_bw()的默认设置为)。

ggplot(mtcars, aes(mpg, hp)) + geom_point() +
  facet_wrap(~carb, ncol = 3) + theme_bw() +
  theme(panel.grid.major = element_blank(),
        panel.grid.minor = element_blank(),
        strip.background = element_blank(),
        panel.border = element_rect(colour = "black", fill = NA))

关于r - 删除 strip 背景,保持面板边框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14185754/

10-12 17:24