Packages

library(tidyverse)

read in data

PFXcover <- read.csv("PFXcover.csv", header=T)

Goals:

  1. Rank Abundance for treatment * control plots (by year?)
  2. Figures for bare ground cover by treatment?
  3. Stacked bar graph of functional group cover

Rank Abundance

library(BiodiversityR)
## Warning: package 'BiodiversityR' was built under R version 4.0.5
## Loading required package: tcltk
## Loading required package: vegan
## Warning: package 'vegan' was built under R version 4.0.5
## Loading required package: permute
## Warning: package 'permute' was built under R version 4.0.5
## Loading required package: lattice
## Warning: package 'lattice' was built under R version 4.0.5
## This is vegan 2.5-7
## BiodiversityR 2.14-1: Use command BiodiversityRGUI() to launch the Graphical User Interface; 
## to see changes use BiodiversityRGUI(changeLog=TRUE, backward.compatibility.messages=TRUE)
library(tibble)

# 
# 
# 
# #load in community data and environment
# data1 <- data %>% column_to_rownames(var="NAME")
# com <- data1[,53:211]
# head(com)
# 
# 
# #environmental factors: climbing and site
# env <- data1[,c("CL_UNCL", "T_LOCATION")]
# env$Climbing <- as.factor(env$CL_UNCL)
# env$Site <- as.factor(env$T_LOCATION)
# 
# RankAbun1 <- rankabundance(com, y=env)
# RankAbun1
# 
# 
# rankabunplot(RankAbun1, scale='abundance', addit=FALSE, specnames=c(1,2,3))
# 
# #Rank abundance curves by climbing and site
# rankabuncomp(com, y=env, factor="Site", scale='proportion', legend=FALSE)
# 
# #by site
# RA.Site <- rankabuncomp(com, y=env, factor='Site', 
#     return.data=TRUE, specnames=c(1:10), legend=FALSE)
# 
  1. Stacked bar graph of functional group cover
#######
#figures for species richness

theme_set(
  theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), 
        panel.background = element_blank(), axis.text = element_text(size=11, colour = "black"),  
        axis.line = element_line(colour = "black"), axis.title = element_text(size=16, colour = "black"),
        legend.title = element_text(size = 16, colour = "black"), legend.text = element_text(size=16, colour= "black")))


#need to go from wide to long format

columns_rich = c("AF_I", "AF_N", "AG_I", "PF_N", "PG_I", "PG_N", "SH_N","PF_I")

summary(PFXcover$PG_I)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.0000  0.0000  0.5463  0.0000 16.6667
PFXcover$PF_I[is.na(PFXcover$PF_I)]<- 0

PFXcover$AF = PFXcover$AF_I + PFXcover$AF_N
PFXcover$PG = PFXcover$PG_N + PFXcover$PF_I
PFXcover$PF = PFXcover$PF_N + PFXcover$PF_I
PFXcover$SH = PFXcover$SH_N
PFXcover$AG = PFXcover$AG_I



col_rich_short =c("AF", "PG", "PF", "SH", "AG")

rich_longer = pivot_longer(PFXcover, col_rich_short, 
                         names_to = "FXGroup", 
                         values_to = "cover")
## Note: Using an external vector in selections is ambiguous.
## i Use `all_of(col_rich_short)` instead of `col_rich_short` to silence this message.
## i See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.
## This message is displayed once per session.
p2 <- ggplot(rich_longer, aes(x=SH_GR, y=cover, fill=FXGroup))
p2 <- p2 + theme_bw()+ 
  geom_bar(position="stack", stat="identity")
p2 <- p2 + facet_grid(~Trt) +
  scale_fill_brewer(palette="Dark2")
plot(p2)

long_P <- rich_longer %>% 
  group_by(PlotID, Trt, SH_GR, Yr, FXGroup) %>%
  summarise(mean_cov = mean(cover))
## `summarise()` has grouped output by 'PlotID', 'Trt', 'SH_GR', 'Yr'. You can
## override using the `.groups` argument.
long_P
## # A tibble: 310 x 6
## # Groups:   PlotID, Trt, SH_GR, Yr [62]
##    PlotID Trt   SH_GR    Yr FXGroup mean_cov
##    <chr>  <chr> <chr> <int> <chr>      <dbl>
##  1 101C   C     HSHG   2021 AF          3.33
##  2 101C   C     HSHG   2021 AG          2.22
##  3 101C   C     HSHG   2021 PF          5   
##  4 101C   C     HSHG   2021 PG         21.1 
##  5 101C   C     HSHG   2021 SH         50.6 
##  6 101C   C     HSHG   2022 AF         40.6 
##  7 101C   C     HSHG   2022 AG         43.3 
##  8 101C   C     HSHG   2022 PF         15   
##  9 101C   C     HSHG   2022 PG         37.8 
## 10 101C   C     HSHG   2022 SH         48.9 
## # ... with 300 more rows
# plant functional group 
p2 <- ggplot(long_P, aes(x=Trt, y=mean_cov, fill=FXGroup))+
  geom_boxplot()+
  theme_bw()+ 
  scale_y_continuous(limits=c(0, 110), expand=c(0,0))+
  scale_fill_brewer(palette="Dark2")+
  facet_grid(~factor(FXGroup, levels=c("AG", "AF", "PG", "PF", "SH")))+
  labs(y="Mean % cover", x = "Treatment")+
  theme(legend.position="none")
plot(p2)

a1 <- aov(cover~FXGroup*Trt, data = rich_longer)
summary(a1)
##              Df Sum Sq Mean Sq F value   Pr(>F)    
## FXGroup       4 133706   33426 116.175  < 2e-16 ***
## Trt           1   1344    1344   4.673   0.0309 *  
## FXGroup:Trt   4  10653    2663   9.257 2.49e-07 ***
## Residuals   890 256076     288                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
TukeyHSD(a1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = cover ~ FXGroup * Trt, data = rich_longer)
## 
## $FXGroup
##            diff       lwr       upr     p adj
## AG-AF  5.740741  0.853452 10.628030 0.0119439
## PF-AF 12.194444  7.307156 17.081733 0.0000000
## PG-AF 30.824074 25.936785 35.711363 0.0000000
## SH-AF 28.212963 23.325674 33.100252 0.0000000
## PF-AG  6.453704  1.566415 11.340992 0.0029840
## PG-AG 25.083333 20.196045 29.970622 0.0000000
## SH-AG 22.472222 17.584933 27.359511 0.0000000
## PG-PF 18.629630 13.742341 23.516918 0.0000000
## SH-PF 16.018519 11.131230 20.905807 0.0000000
## SH-PG -2.611111 -7.498400  2.276178 0.5886219
## 
## $Trt
##          diff       lwr        upr     p adj
## T-C -2.449901 -4.674259 -0.2255426 0.0309121
## 
## $`FXGroup:Trt`
##                   diff         lwr        upr     p adj
## AG:C-AF:C  10.87301587   2.5713199  19.174712 0.0014672
## PF:C-AF:C  10.77380952   2.4721135  19.075506 0.0017161
## PG:C-AF:C  24.98015873  16.6784627  33.281855 0.0000000
## SH:C-AF:C  24.88095238  16.5792564  33.182648 0.0000000
## AF:T-AF:C  -4.49900794 -12.5370905   3.539075 0.7507889
## AG:T-AF:C  -3.24900794 -11.2870905   4.789075 0.9575533
## PF:T-AF:C   8.93849206   0.9004095  16.976575 0.0159484
## PG:T-AF:C  31.43849206  23.4004095  39.476575 0.0000000
## SH:T-AF:C  26.62946429  18.5913817  34.667547 0.0000000
## PF:C-AG:C  -0.09920635  -8.4009023   8.202490 1.0000000
## PG:C-AG:C  14.10714286   5.8054469  22.408839 0.0000040
## SH:C-AG:C  14.00793651   5.7062405  22.309632 0.0000049
## AF:T-AG:C -15.37202381 -23.4101064  -7.333941 0.0000001
## AG:T-AG:C -14.12202381 -22.1601064  -6.083941 0.0000015
## PF:T-AG:C  -1.93452381  -9.9726064   6.103559 0.9990241
## PG:T-AG:C  20.56547619  12.5273936  28.603559 0.0000000
## SH:T-AG:C  15.75644841   7.7183658  23.794531 0.0000000
## PG:C-PF:C  14.20634921   5.9046532  22.508045 0.0000033
## SH:C-PF:C  14.10714286   5.8054469  22.408839 0.0000040
## AF:T-PF:C -15.27281746 -23.3109000  -7.234735 0.0000001
## AG:T-PF:C -14.02281746 -22.0609000  -5.984735 0.0000018
## PF:T-PF:C  -1.83531746  -9.8734000   6.202765 0.9993606
## PG:T-PF:C  20.66468254  12.6266000  28.702765 0.0000000
## SH:T-PF:C  15.85565476   7.8175722  23.893737 0.0000000
## SH:C-PG:C  -0.09920635  -8.4009023   8.202490 1.0000000
## AF:T-PG:C -29.47916667 -37.5172492 -21.441084 0.0000000
## AG:T-PG:C -28.22916667 -36.2672492 -20.191084 0.0000000
## PF:T-PG:C -16.04166667 -24.0797492  -8.003584 0.0000000
## PG:T-PG:C   6.45833333  -1.5797492  14.496416 0.2443434
## SH:T-PG:C   1.64930556  -6.3887770   9.687388 0.9997329
## AF:T-SH:C -29.37996032 -37.4180429 -21.341878 0.0000000
## AG:T-SH:C -28.12996032 -36.1680429 -20.091878 0.0000000
## PF:T-SH:C -15.94246032 -23.9805429  -7.904378 0.0000000
## PG:T-SH:C   6.55753968  -1.4805429  14.595622 0.2249682
## SH:T-SH:C   1.74851190  -6.2895707   9.786594 0.9995686
## AG:T-AF:T   1.25000000  -6.5155255   9.015526 0.9999653
## PF:T-AF:T  13.43750000   5.6719745  21.203026 0.0000024
## PG:T-AF:T  35.93750000  28.1719745  43.703026 0.0000000
## SH:T-AF:T  31.12847222  23.3629467  38.893998 0.0000000
## PF:T-AG:T  12.18750000   4.4219745  19.953026 0.0000338
## PG:T-AG:T  34.68750000  26.9219745  42.453026 0.0000000
## SH:T-AG:T  29.87847222  22.1129467  37.643998 0.0000000
## PG:T-PF:T  22.50000000  14.7344745  30.265526 0.0000000
## SH:T-PF:T  17.69097222   9.9254467  25.456498 0.0000000
## SH:T-PG:T  -4.80902778 -12.5745533   2.956498 0.6245561

compare 2021 to 2022

# plant functional group 
head(long_P)
## # A tibble: 6 x 6
## # Groups:   PlotID, Trt, SH_GR, Yr [2]
##   PlotID Trt   SH_GR    Yr FXGroup mean_cov
##   <chr>  <chr> <chr> <int> <chr>      <dbl>
## 1 101C   C     HSHG   2021 AF          3.33
## 2 101C   C     HSHG   2021 AG          2.22
## 3 101C   C     HSHG   2021 PF          5   
## 4 101C   C     HSHG   2021 PG         21.1 
## 5 101C   C     HSHG   2021 SH         50.6 
## 6 101C   C     HSHG   2022 AF         40.6
long_P$Yr <- factor(long_P$Yr)
c21 <- long_P %>% filter(Yr=="2021")
p2 <- ggplot(c21, aes(x=Trt, y=mean_cov, fill=FXGroup))+
  geom_boxplot()+
  theme_bw()+ 
  scale_y_continuous(limits=c(0, 110), expand=c(0,0))+
  scale_fill_brewer(palette="Dark2")+
  facet_grid(~factor(FXGroup, levels=c("AG", "AF", "PG", "PF", "SH")))+
  labs(y="Mean % cover", x = "Treatment", title = "2021")+
  theme(legend.position="none")
plot(p2)

c21_longer = rich_longer %>% filter(Yr=="2021")
a1 <- aov(cover~FXGroup*Trt, data = c21_longer)
summary(a1)
##              Df Sum Sq Mean Sq F value Pr(>F)    
## FXGroup       4  91362   22840 120.770 <2e-16 ***
## Trt           1     26      26   0.139  0.709    
## FXGroup:Trt   4   1892     473   2.501  0.042 *  
## Residuals   425  80377     189                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
TukeyHSD(a1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = cover ~ FXGroup * Trt, data = c21_longer)
## 
## $FXGroup
##            diff       lwr       upr     p adj
## AG-AF  4.674330 -1.037870 10.386529 0.1664608
## PF-AF 14.137931  8.425731 19.850131 0.0000000
## PG-AF 33.429119 27.716919 39.141319 0.0000000
## SH-AF 35.229885 29.517685 40.942085 0.0000000
## PF-AG  9.463602  3.751402 15.175802 0.0000721
## PG-AG 28.754789 23.042589 34.466989 0.0000000
## SH-AG 30.555556 24.843356 36.267756 0.0000000
## PG-PF 19.291188 13.578988 25.003388 0.0000000
## SH-PF 21.091954 15.379754 26.804154 0.0000000
## SH-PG  1.800766 -3.911434  7.512966 0.9099886
## 
## $Trt
##          diff       lwr      upr     p adj
## T-C 0.4946581 -2.111382 3.100698 0.7092693
## 
## $`FXGroup:Trt`
##                  diff        lwr        upr     p adj
## AG:C-AF:C   8.6752137  -1.230137  18.580564 0.1446731
## PF:C-AF:C  15.7692308   5.863880  25.674581 0.0000269
## PG:C-AF:C  30.5555556  20.650205  40.460906 0.0000000
## SH:C-AF:C  34.4444444  24.539094  44.349795 0.0000000
## AF:T-AF:C   1.2099359  -8.219677  10.639549 0.9999949
## AG:T-AF:C   2.6335470  -6.796066  12.063160 0.9967674
## PF:T-AF:C  14.0224359   4.592823  23.452049 0.0001319
## PG:T-AF:C  36.9738248  27.544212  46.403437 0.0000000
## SH:T-AF:C  37.0779915  27.648379  46.507604 0.0000000
## PF:C-AG:C   7.0940171  -2.811333  16.999368 0.4056408
## PG:C-AG:C  21.8803419  11.974991  31.785692 0.0000000
## SH:C-AG:C  25.7692308  15.863880  35.674581 0.0000000
## AF:T-AG:C  -7.4652778 -16.894890   1.964335 0.2617654
## AG:T-AG:C  -6.0416667 -15.471279   3.387946 0.5726628
## PF:T-AG:C   5.3472222  -4.082390  14.776835 0.7327266
## PG:T-AG:C  28.2986111  18.868998  37.728224 0.0000000
## SH:T-AG:C  28.4027778  18.973165  37.832390 0.0000000
## PG:C-PF:C  14.7863248   4.880974  24.691675 0.0001213
## SH:C-PF:C  18.6752137   8.769863  28.580564 0.0000002
## AF:T-PF:C -14.5592949 -23.988908  -5.129682 0.0000564
## AG:T-PF:C -13.1356838 -22.565296  -3.706071 0.0005029
## PF:T-PF:C  -1.7467949 -11.176408   7.682818 0.9998813
## PG:T-PF:C  21.2045940  11.774981  30.634207 0.0000000
## SH:T-PF:C  21.3087607  11.879148  30.738373 0.0000000
## SH:C-PG:C   3.8888889  -6.016462  13.794239 0.9638613
## AF:T-PG:C -29.3456197 -38.775232 -19.916007 0.0000000
## AG:T-PG:C -27.9220085 -37.351621 -18.492396 0.0000000
## PF:T-PG:C -16.5331197 -25.962732  -7.103507 0.0000019
## PG:T-PG:C   6.4182692  -3.011343  15.847882 0.4827613
## SH:T-PG:C   6.5224359  -2.907177  15.952049 0.4583502
## AF:T-SH:C -33.2345085 -42.664121 -23.804896 0.0000000
## AG:T-SH:C -31.8108974 -41.240510 -22.381285 0.0000000
## PF:T-SH:C -20.4220085 -29.851621 -10.992396 0.0000000
## PG:T-SH:C   2.5293803  -6.900232  11.958993 0.9976289
## SH:T-SH:C   2.6335470  -6.796066  12.063160 0.9967674
## AG:T-AF:T   1.4236111  -7.504951  10.352173 0.9999666
## PF:T-AF:T  12.8125000   3.883938  21.741062 0.0002796
## PG:T-AF:T  35.7638889  26.835327  44.692451 0.0000000
## SH:T-AF:T  35.8680556  26.939493  44.796618 0.0000000
## PF:T-AG:T  11.3888889   2.460327  20.317451 0.0023719
## PG:T-AG:T  34.3402778  25.411716  43.268840 0.0000000
## SH:T-AG:T  34.4444444  25.515882  43.373007 0.0000000
## PG:T-PF:T  22.9513889  14.022827  31.879951 0.0000000
## SH:T-PF:T  23.0555556  14.126993  31.984118 0.0000000
## SH:T-PG:T   0.1041667  -8.824396   9.032729 1.0000000
c22 <- long_P %>% filter(Yr=="2022")
p2 <- ggplot(c22, aes(x=Trt, y=mean_cov, fill=FXGroup))+
  geom_boxplot()+
  theme_bw()+ 
  scale_y_continuous(limits=c(0, 110), expand=c(0,0))+
  scale_fill_brewer(palette="Dark2")+
  facet_grid(~factor(FXGroup, levels=c("AG", "AF", "PG", "PF", "SH")))+
  labs(y="Mean % cover", x = "Treatment", title = "2022")+
  theme(legend.position="none")
plot(p2)

c22_longer = rich_longer %>% filter(Yr=="2022")
a1 <- aov(cover~FXGroup*Trt, data = c21_longer)
summary(a1)
##              Df Sum Sq Mean Sq F value Pr(>F)    
## FXGroup       4  91362   22840 120.770 <2e-16 ***
## Trt           1     26      26   0.139  0.709    
## FXGroup:Trt   4   1892     473   2.501  0.042 *  
## Residuals   425  80377     189                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
TukeyHSD(a1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = cover ~ FXGroup * Trt, data = c21_longer)
## 
## $FXGroup
##            diff       lwr       upr     p adj
## AG-AF  4.674330 -1.037870 10.386529 0.1664608
## PF-AF 14.137931  8.425731 19.850131 0.0000000
## PG-AF 33.429119 27.716919 39.141319 0.0000000
## SH-AF 35.229885 29.517685 40.942085 0.0000000
## PF-AG  9.463602  3.751402 15.175802 0.0000721
## PG-AG 28.754789 23.042589 34.466989 0.0000000
## SH-AG 30.555556 24.843356 36.267756 0.0000000
## PG-PF 19.291188 13.578988 25.003388 0.0000000
## SH-PF 21.091954 15.379754 26.804154 0.0000000
## SH-PG  1.800766 -3.911434  7.512966 0.9099886
## 
## $Trt
##          diff       lwr      upr     p adj
## T-C 0.4946581 -2.111382 3.100698 0.7092693
## 
## $`FXGroup:Trt`
##                  diff        lwr        upr     p adj
## AG:C-AF:C   8.6752137  -1.230137  18.580564 0.1446731
## PF:C-AF:C  15.7692308   5.863880  25.674581 0.0000269
## PG:C-AF:C  30.5555556  20.650205  40.460906 0.0000000
## SH:C-AF:C  34.4444444  24.539094  44.349795 0.0000000
## AF:T-AF:C   1.2099359  -8.219677  10.639549 0.9999949
## AG:T-AF:C   2.6335470  -6.796066  12.063160 0.9967674
## PF:T-AF:C  14.0224359   4.592823  23.452049 0.0001319
## PG:T-AF:C  36.9738248  27.544212  46.403437 0.0000000
## SH:T-AF:C  37.0779915  27.648379  46.507604 0.0000000
## PF:C-AG:C   7.0940171  -2.811333  16.999368 0.4056408
## PG:C-AG:C  21.8803419  11.974991  31.785692 0.0000000
## SH:C-AG:C  25.7692308  15.863880  35.674581 0.0000000
## AF:T-AG:C  -7.4652778 -16.894890   1.964335 0.2617654
## AG:T-AG:C  -6.0416667 -15.471279   3.387946 0.5726628
## PF:T-AG:C   5.3472222  -4.082390  14.776835 0.7327266
## PG:T-AG:C  28.2986111  18.868998  37.728224 0.0000000
## SH:T-AG:C  28.4027778  18.973165  37.832390 0.0000000
## PG:C-PF:C  14.7863248   4.880974  24.691675 0.0001213
## SH:C-PF:C  18.6752137   8.769863  28.580564 0.0000002
## AF:T-PF:C -14.5592949 -23.988908  -5.129682 0.0000564
## AG:T-PF:C -13.1356838 -22.565296  -3.706071 0.0005029
## PF:T-PF:C  -1.7467949 -11.176408   7.682818 0.9998813
## PG:T-PF:C  21.2045940  11.774981  30.634207 0.0000000
## SH:T-PF:C  21.3087607  11.879148  30.738373 0.0000000
## SH:C-PG:C   3.8888889  -6.016462  13.794239 0.9638613
## AF:T-PG:C -29.3456197 -38.775232 -19.916007 0.0000000
## AG:T-PG:C -27.9220085 -37.351621 -18.492396 0.0000000
## PF:T-PG:C -16.5331197 -25.962732  -7.103507 0.0000019
## PG:T-PG:C   6.4182692  -3.011343  15.847882 0.4827613
## SH:T-PG:C   6.5224359  -2.907177  15.952049 0.4583502
## AF:T-SH:C -33.2345085 -42.664121 -23.804896 0.0000000
## AG:T-SH:C -31.8108974 -41.240510 -22.381285 0.0000000
## PF:T-SH:C -20.4220085 -29.851621 -10.992396 0.0000000
## PG:T-SH:C   2.5293803  -6.900232  11.958993 0.9976289
## SH:T-SH:C   2.6335470  -6.796066  12.063160 0.9967674
## AG:T-AF:T   1.4236111  -7.504951  10.352173 0.9999666
## PF:T-AF:T  12.8125000   3.883938  21.741062 0.0002796
## PG:T-AF:T  35.7638889  26.835327  44.692451 0.0000000
## SH:T-AF:T  35.8680556  26.939493  44.796618 0.0000000
## PF:T-AG:T  11.3888889   2.460327  20.317451 0.0023719
## PG:T-AG:T  34.3402778  25.411716  43.268840 0.0000000
## SH:T-AG:T  34.4444444  25.515882  43.373007 0.0000000
## PG:T-PF:T  22.9513889  14.022827  31.879951 0.0000000
## SH:T-PF:T  23.0555556  14.126993  31.984118 0.0000000
## SH:T-PG:T   0.1041667  -8.824396   9.032729 1.0000000