You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using facet_grid2(x ~ y, scales = "free", independent = TRUE, render_empty = FALSE), adding a vertical or horizontal line causes axes ticks to appear in the empty plots.
library("ggh4x")
# without extra lines, the empty plots render ok
ggplot(mtcars) +
aes(x=wt, y=mpg) +
facet_grid2(cyl~vs, scales="free",
independent=TRUE, render_empty=FALSE) +
geom_point()
# adding either a vline or hline causes the empty plots to get axis ticks
ggplot(mtcars) +
aes(x=wt, y=mpg) +
facet_grid2(cyl~vs, scales="free",
independent=TRUE, render_empty=FALSE) +
geom_point() +
geom_vline(xintercept=3.5)
ggplot(mtcars) +
aes(x=wt, y=mpg) +
facet_grid2(cyl~vs, scales="free",
independent=TRUE, render_empty=FALSE) +
geom_point() +
geom_hline(yintercept=15)
# abline doesn't cause this problem BUT it's impossible to do vlines with abline
ggplot(mtcars) +
aes(x=wt, y=mpg) +
facet_grid2(cyl~vs, scales="free",
independent=TRUE, render_empty=FALSE) +
geom_point() +
geom_abline(intercept=10, slope=1)
The text was updated successfully, but these errors were encountered:
This is because geom_vline()/geom_hline() are 'special' in that they don't need data, and ggplot2 draws data without facetting variables in every panel. This technically makes these facets non-empty, which is probably why the axes are drawn there (as render_empty only affects the rendering step, not the setup step).
To work around this, I'd suggest to include the facetting variables in geom_hline()/geom_vline()'s data and put the intercept in the mapping argument.
When using
facet_grid2(x ~ y, scales = "free", independent = TRUE, render_empty = FALSE)
, adding a vertical or horizontal line causes axes ticks to appear in the empty plots.The text was updated successfully, but these errors were encountered: