Как избавиться от лишнего места в верхней части графика с помощью 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")

0 ответов

Другие вопросы по тегам