У меня есть три фрейма данных (сохраненные в одном списке), которые я рисую индивидуально в виде гистограмм. Код для графиков выглядит так:
plot1 <- ggplot(list[[1]], aes_string(x = names(list[[1]])[[1]], y = "Kat")) +
geom_bar(stat = "identity", width = 0.6) +
ylim(0,100) +
coord_flip() +
guides(fill=FALSE) +
theme_bw() + theme( strip.background = element_blank(),
panel.grid.major = element_line(colour = "grey80"),
panel.border = element_blank(),
axis.ticks = element_blank(),
panel.grid.minor.y = element_blank(),
panel.grid.major.y = element_blank(),
axis.text.y = element_text(hjust = 0.5))
plot2 <- ggplot(list[[2]], aes_string(x = names(list[[2]])[[1]], y = "Kat")) +
geom_bar(stat = "identity", width = 0.6) +
ylim(0,100) +
coord_flip() +
guides(fill=FALSE) +
theme_bw() + theme( strip.background = element_blank(),
panel.grid.major = element_line(colour = "grey80"),
panel.border = element_blank(),
axis.ticks = element_blank(),
panel.grid.minor.y = element_blank(),
panel.grid.major.y = element_blank(),
axis.text.y = element_text(hjust = 0.5))
plot3 <- ggplot(list[[3]], aes_string(x = names(list[[3]])[[1]], y = "Kat")) +
geom_bar(stat = "identity", width = 0.6) +
ylim(0,100) +
coord_flip() +
guides(fill=FALSE) +
theme_bw() + theme( strip.background = element_blank(),
panel.grid.major = element_line(colour = "grey80"),
panel.border = element_blank(),
axis.ticks = element_blank(),
panel.grid.minor.y = element_blank(),
panel.grid.major.y = element_blank(),
axis.text.y = element_text(hjust = 0.5))
Моя цель - расположить все три графика один под другим, используя grid.arrange. Это выглядит примерно так:
grid.arrange(plot1, plot1, plot3, ncol=1)
Однако, поскольку на одном графике есть три полосы, а на двух других - только 2 полосы, ширина полос не одинакова при использовании grid.arrange. Поэтому возникает вопрос: как сохранить размер графиков (или ширину полос) с помощью grid.arrange, чтобы они отображались один под другим?
Список, содержащий три фрейма данных, выглядит так:
[[1]]
Bildung Kat
2 Hoch 67
3 Mittel 50
4 Tief 25
[[2]]
Geschlecht Kat
6 W 60
7 M 40
[[3]]
Region Kat
9 Stadt 80
10 Land 70