Подтвердить что ты не робот

Сила X оси на обоих графиках в сетке фасет, когда значения X одинаковы

У меня есть данные с примерно 30 категориями для оси X в двух группах для огранки. Я покажу это с некоторыми случайными данными:

dataf <- data.frame(x=c(1:30), A=rnorm(30,20,5), B=rnorm(30,15,0.5))
datam <- melt(dataf, id="x")
ggplot(datam, aes(factor(x), value)) + 
  geom_bar(stat="identity") + 
  facet_grid(variable ~ .)

enter image description here

Это просто прекрасно, за исключением того, что было бы легче быстро считывать категории в верхней группе, если бы ось x была воспроизведена на этом графике. Однако

ggplot(datam, aes(factor(x), value)) + 
  geom_bar(stat="identity") + 
  facet_grid(variable ~ ., scales="free")

не имеет никакого значения для оси x, потому что, я думаю, значения одинаковы для обеих групп.

Как я могу заставить ось X воспроизводиться для верхней группы, а также столбцов?

4b9b3361

Ответ 1

Попробуйте вместо этого использовать facet_wrap:

ggplot(datam, aes(factor(x), value)) + 
    geom_bar(stat="identity") + 
    facet_wrap(~variable,nrow = 2,scales = "free")

enter image description here