我用這個ggplot2包做了 3 個圖。為了在單個圖中排列圖,我使用了patchwork包。在排列中,我在頂部放了 2 個圖,在這些圖下方是普通圖例,在普通圖例下方是第三個圖。我使用該guide_area()函式創建了公共圖例空間,但隨之創建了一個大的未使用的空白區域。
如何將這個未使用的空白空間保持在最低限度?
library(ggplot2)
library(patchwork)
p1 <- ggplot(data = mpg,
aes(x = fl,
y = displ))
geom_col(aes(fill = cty))
p2 <- ggplot(data = mpg,
aes(x = year,
y = hwy))
geom_point(aes(color = drv))
p3 <- ggplot(data = mpg,
aes(x = class,
y = displ))
geom_col()
facet_grid(~year)
((p1 p2)/guide_area()/p3)
plot_layout(guides = "collect") &
theme(legend.position = "bottom")
留白在圖形的不同大小和比例中保持不變(留白用紅色標記)。

uj5u.com熱心網友回復:
heights = ...在里面使用plot_layout。
例如,
((p1 p2)/guide_area()/p3)
plot_layout(guides = "collect", heights = c(3,1,3)) &
theme(legend.position = "bottom")

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/315834.html
