Проблема различного положения оси X при использовании grid.arrange и легенды внизу - PullRequest
1 голос
/ 05 апреля 2019

Я должен расположить два участка с одинаковыми осями рядом друг с другом и сделал это с помощью ggplot2 и grid.arrange.Из-за более аккуратного представления легенды должны быть помещены внизу.К сожалению, иногда на левом графике больше записей легенды, чем на правом, и поэтому ему нужна вторая строка, дающая оси X в разных положениях y.Поэтому он не только выглядит неопрятно, цель сравнения этих графиков больше не достигается.

Кто-нибудь может помочь?

plot_left <- some_ggplot2_fct(variable,left) + 
  theme(legend.position = "bottom")+ 
  theme(legend.background = element_rect(size = 0.5, linetype="solid", colour ="black"))

plot_right <- some_ggplot2_fct(variable,right,f)+ 
  theme(legend.position = "bottom")+ 
  theme(legend.background = element_rect(size = 0.5, linetype="solid", colour ="black"))

# adjust y axis for more easy compare
upper_lim <- max(plot_Volume_right$data$value, plot_Volume_left$data$value)
lower_lim <- min(plot_Volume_right$data$value, plot_Volume_left$data$value)
plot_Volume_left <- plot_Volume_left + ylim(c(lower_lim, upper_lim))
plot_Volume_right <- plot_Volume_right + ylim(c(lower_lim, upper_lim))

# Arrange plots in grid
grid.arrange(plot_Volume_left, plot_Volume_right,
             ncol = 2, 
             top = textGrob(strTitle, 
                            gp = gpar(fontfamily = "Raleway", fontsize = 15, font = 2)))

На рисунке вы видите результат:

Теперь вы можете легко решить эту проблему без особых изменений в коде?(Базовая структура довольно большая)

...