Фиктивные данные
d = data.frame(
x = factor(LETTERS[c(1,2,3,4,1,2,3,4,1,2,1,2,1,2,1,2)]),
y = c(100,80,70,60,130,90,65,60,2,3,3,3,2,2,1,2),
grid = rep(letters[1:2], each=8)
)
Выпуск
ggplot(d, aes(x=x, y=y)) + facet_grid(~grid, scales="free",space="free_x") + geom_point()
Мне нравится этот график. Моя единственная проблема заключается в том, что обе сетки используют одну и ту же ось Y
. Итак, я попытался использовать facet_wrap
вместо facet_grid
и получил
ggplot(d, aes(x=x, y=y)) + facet_wrap(~grid, scales="free") + geom_point()
Но, к сожалению, facet_wrap
не имеет параметра "пробел", и в результате правый и левый графы имеют одинаковую ширину.
Вопрос
Как я могу сделать так, чтобы расстояние между уровнями переменной d$x
было одинаковым для обеих граней (ведущих к фасетам различной ширины) И иметь отдельную ось Y
для каждого фасета. Конечно, я бы хотел, чтобы грани были выровнены по горизонтали.