对于ggplot v2.1.0或更高版本,用于element_blank()
删除不需要的元素:
library(MASS)
library(ggplot2)
qplot(
week,
y,
data = bacteria,
group = ID,
geom = c('point', 'line'),
xlab = '',
ylab = ''
) +
facet_wrap(~ ID) +
theme(
strip.background = element_blank(),
strip.text.x = element_blank()
)
在这种情况下,您要删除的元素称为strip
。
使用ggplot grob布局的替代方法
在ggplot
(v2.1.0之前)的旧版本中,带状文本在gtable布局中占据行。
element_blank
删除文本和背景,但不会删除行占用的空间。
此代码从布局中删除这些行:
library(ggplot2)
library(grid)
p <- qplot(
week,
y,
data = bacteria,
group = ID,
geom = c('point', 'line'),
xlab = '',
ylab = ''
) +
facet_wrap(~ ID)
gt <- ggplotGrob(p)
panels <- grep("panel", gt$layout$name)
top <- unique(gt$layout$t[panels])
gt = gt[-(top-1), ]
grid.newpage()
grid.draw(gt)
Error in apply(strip_mat, 1, max_height) : dim(X) must have a positive length
吗?