Как избавиться от лишнего места в верхней части графика с помощью ggplot2
Я использую лоскутное шитье, чтобы объединить два сюжета. Без ограничения оси y графика высот график рассеяния выглядит слишком крутым для того, что я пытаюсь показать (отметка суши), но когда я ограничиваю ось, у меня остается много места, которое затем сжимает график ниже. Есть ли способ удалить все это нежелательное пространство, чтобы сделать высотный участок (P2) более аккуратным?
st3<-read.csv("st3raw.csv",header=TRUE)
library(tidypaleo)
library(tidyverse)
theme_set(theme_bw(8))
library(grid)
st3<-pivot_longer(st3, cols=c(-Depth,-Sample,-Total,-
Elevation),names_to="species",values_to="rel_abund")
st3$Sample <- as.character(st3$Sample)
st3$Total<- as.character(st3$Total)
P1<-ggplot(st3, aes(x = Depth, y = rel_abund,group=1,fill=Sample)) +
geom_col(position="identity",width=2) +
facet_abundance(vars(species)) +
labs(x = "Distance (m)", y = "Relative abundance")
P1
P2<-ggplot(st3,aes(x=Depth, y=Elevation,colour=Sample))+geom_point()+
scale_x_continuous(breaks=seq(0,320,20))+
scale_y_continuous(limits=c(0,4),breaks=seq(0,1,.25))+
geom_line(size=0.5)+
geom_point(size=2)
P2
library(patchwork)
(P2) /
P1
structure(list(Sample = c(1L, 1L, 1L, 1L, 1L, 1L), Depth = c(24L,
26L, 30L, 32L, 38L, 48L), AT.salsa = c(10.44226044, 0, 0, 0,
0, 0), BH.wilberti = c(29.97542998, 0, 0, 0, 15.78947368, 0),
CT.irregularis = c(2.088452088, 2.821869489, 11.76470588,
1.213592233, 11.11111111, 0), DE.macrescens = c(4.422604423,
26.45502646, 58.82352941, 28.6407767, 3.50877193, 66.66666667
), FT.inflata = c(50, 26.10229277, 27.45098039, 69.41747573,
68.42105263, 25.14619883), GM.fusca = c(2.702702703, 43.73897707,
1.960784314, 0.72815534, 1.169590643, 5.263157895), Total = c(0L,
1L, 0L, 1L, 1L, 1L), Elevation = c(0.937, 0.85, 0.915, 0.868,
0.836, 0.81)), row.names = c(NA, 6L), class = "data.frame")