使用 grid.arrange 缩小和对齐图

Ved*_*dda 1 r ggplot2

我有三个图,我想堆叠它们,缩小底部的 2 个,并确保它们垂直对齐。我可以做一个或另一个,但不能同时做。正如你在图 1 中看到的,这些图是垂直对齐的,但我需要缩小底部的两个;在图 2 中,底部的两个已缩小,但未垂直对齐。

如何缩小底部的两个图并确保所有图都垂直对齐?

下面是一个例子:

ggplot:

library(gridExtra)
library(ggplot2)
library(cowplot)
a <- ggplot(data = diamonds, mapping = aes(y = carat, x = price)) + geom_line()
b <- ggplot(data = diamonds, mapping = aes(x = clarity)) + geom_bar()
c <- ggplot(data = diamonds, mapping = aes(x = color)) + geom_bar()
Run Code Online (Sandbox Code Playgroud)

情节 1:

plot_grid(a, b, c, labels=c("", "", ""), ncol = 1, nrow = 3, align = "v")
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

情节 2:

grid.arrange(a,b,c, ncol = 1, nrow = 3, widths = c(1), heights = c(1,.3,.3))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

G. *_*eck 5

试试这个rel_heights论点:

plot_grid(a, b, c, ncol = 1, align = "v", rel_heights = c(3, 1, 1))
Run Code Online (Sandbox Code Playgroud)