我正在尝试使用 Cowplot 制作一些“紧密堆积”的图。我可以使用以下MWE获得我想要的效果:
library(ggplot2)
library(cowplot)
disp_plot <- ggplot(data=mtcars,aes(x= hp,y=disp)) + geom_point()+
theme(plot.margin = unit(c(0.3,0.3,0.0,0.15), "cm"),
axis.text.x =element_blank(),axis.title.x =element_blank())
mpg_plot <- ggplot(data=mtcars,aes(x= hp,y=mpg)) + geom_point()+
theme(plot.margin = unit(c(0.0,0.3,0.0,0.15), "cm"),
axis.text.x =element_blank(),axis.title.x =element_blank())
qsec_plot <- ggplot(data=mtcars,aes(x= hp,y=qsec)) + geom_point()+
theme(plot.margin = unit(c(0.0,0.3,0.3,0.15), "cm"))
mp <- plot_grid(disp_plot, mpg_plot, qsec_plot,ncol = 1,align='v', axis = 'l')
Run Code Online (Sandbox Code Playgroud)
请注意,mpg 的垂直刻度与其他刻度不同。为了使绘图也具有相同的垂直尺寸,我想在plot_grid 中使用“align='hv'”。然而,这会导致边距设置的间距恢复,并且图形再次分开。有什么办法可以保持间距吗?
不cowplot
,但这似乎有效。
library(egg)
library(grid)
grid.draw(ggarrange(plots=list(disp_plot, mpg_plot, qsec_plot)))
Run Code Online (Sandbox Code Playgroud)