ggplot2 y gridExtra: elimina completamente la tira en facet_grid, no solo invisible

Tengo dos gráficos que estoy colocando uno encima del otro, de la siguiente manera:

library(ggplot2)
library(gridExtra)
p1 <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
p2 <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
p2 <- p2 + facet_grid(cyl ~ .)
grid.arrange(p1, p2, ncol=1)

Para esto necesito los ejes x de los gráficos superior e inferior para alinearse, sin embargo, debido a la tira a la izquierda, el gráfico facetado es más estrecho que el gráfico superior. Puedo hacer la tira invisible usando:

theme(strip.text.y = element_blank())
theme(strip.background = element_blank())

Sin embargo, esto no elimina el espacio que ocupa la tira. Entonces, o bien necesito una forma de deshacerme de la tira por completo, o tengo una manera de dividir mi gráfico facetado en gráficos separados, pero de alguna manera compartiendo la misma etiqueta del eje y entre ellos. En mi gráfico tengo dos paneles facetados que no son muy altos, y no hay suficiente espacio para que cada uno tenga un eje y de tamaño decente.

¿Alguna sugerencia?

Respuestas a la pregunta(4)

Su respuesta a la pregunta