This document contains graphs and tables taken from data collected from the Cedar Creek Juniper Mastication Project. QA/QC summaries on this have been broken down into three portions: “Woody Debris”, “Belt Transects” and “Plant composition”. All three are from the original data spreadsheet “CedarCreekMastication.xlxs” (file path: Rangeland responses to Fire > Woody plants > Juniper mastication > BLM > data)

## Loading required package: pacman

Sec 1: Course Woody Debris Summary

A summarizing of woody debris (mean count, SE) taken from ALL combined Cedar Creek transects.

## # A tibble: 27 × 6
##    date                transect small medium large Above8
##    <dttm>                 <dbl> <dbl>  <dbl> <dbl> <chr> 
##  1 2024-06-25 00:00:00       37    32     17     4 "9.5" 
##  2 2024-06-25 00:00:00       38    51     14     4 "0"   
##  3 2024-06-24 00:00:00       39    52     10     0 "0"   
##  4 2024-06-24 00:00:00       40    17      4     0 "0"   
##  5 2024-06-24 00:00:00       41    90     21    15 "17"  
##  6 2024-06-24 00:00:00       41    90     21    15 " 11" 
##  7 2024-06-24 00:00:00       42    14     36     6 "21"  
##  8 2024-06-24 00:00:00       43    21     12     3 "0"   
##  9 2024-06-24 00:00:00       44    70     17     1 "0"   
## 10 2024-06-25 00:00:00       45    38     17     7 "10"  
## # ℹ 17 more rows
##           Min. 1st Qu. Median      Mean 3rd Qu. Max.
## SmallWood    7    17.5     32 34.962963    45.0   90
## MedWood      0     7.5     11 11.777778    17.0   36
## LrgWood      0     1.0      2  3.888889     6.5   15
## Above8       1     6.0      6  6.222222     6.0   12

Objective was to properly equate all string variables (Above8), reapply to the corresponding variables without creating repetitions of the other observations.

#A summarizing of woody debris (mean count, SE) taken from ALL combined Cedar Creek transects. 


CedarCreekMastication$Above8 <- c(CedarCreekMastication$Above8/sum(CedarCreekMastication$Above8)) %>% 
  as.numeric(factor(CedarCreekMastication$Above8))


WdLong <- CedarCreekMastication %>%
  pivot_longer(
    cols = c("small","medium","large","Above8"),
    names_to = "Size",
    values_to = "Wd_val",
    values_drop_na = TRUE
  )

Wd_mean <- WdLong %>%
  group_by(Size, transect) %>%
  summarise(
    Wd_mn = mean(`Wd_val`, na.rm = TRUE),
    Wd_sd = sd(`Wd_val`, na.rm = TRUE),
    count = n(),
    Wd_se = Wd_sd/ sqrt(count)
  ) %>% 
  ungroup()


Wddat <- Wd_mean %>% filter(Size=="small"|Size=="medium"|Size=="large"|Size=="Above8")


ggplot(Wddat) + 
  geom_boxplot(aes(x=Size, y=Wd_mn), color = "blue", fill = "orange") +
  labs(title = "Size Averages",
       x = "Debris Size",
       y = "Debris Count")

#Histograms reflecting woody debris count distribution via size



ggplot(CedarCreekMastication, aes(x = small)) +
  geom_histogram(binwidth = 4, fill = "chocolate", color = "black", alpha=.5, fill="lightblue") +
  labs(title = "Small Woody Debris (0-0.5 cm)",
       x = "Count",
       y= "Frequency") +
  theme_minimal()

ggplot(CedarCreekMastication, aes(x = medium)) +
  geom_histogram(binwidth = 1.75, fill = "darkorange", color = "black", alpha = 1) +
  labs(title = "Medium Woody Debris (0.5-2.5 cm)",
       x = "Count",
       y= "Frequency") +
  theme_minimal()

ggplot(CedarCreekMastication, aes(x = large)) +
  geom_histogram(binwidth = 1.25, fill = "darkgoldenrod", color = "black", alpha = 1) +
  labs(title = "Large Woody Debris (2.5-8 cm)",
       x = "Count",
       y= "Frequency") +
  theme_minimal()

ggplot(Wd_mean, 
       aes(x=transect, y=`Wd_mn`, 
           fill = Size)) + 
  geom_col(color="black") +
  labs(title = "Debris Sums by Transect",
       x = "Transect ID",
       y = "Debris Count")

Sec 2: Belt Transects

Using a bargraph to show plant intersects by species, we see the two dominant species along each transect are Rocky Mountain Juniper (Juniperus scopulorum) and snowberry (Symphoricarpos albus)

Sec 3: Plant Composition

Original dataset from CedarCreekMastication spreadsheet (PlantComp)

Objective was to find out the overall averages in cover (%) for each species within the expiremental unit. Of the 1211 observations from 5 variables I filtered the data to reflect species coverage removing all zero values as these values are irrelevant and skewing the data. This produced a breakdown version of 686 observations from 2 variables (% coverage and species) The majority of coverage was herbaceous litter, crust (lichens and moss) and bare ground.

Script is shown for possible needed corrections

data <- data.frame(
  x = c(CCPlant$code),
  y = c(CCPlant$cover)
)

filtered_data <- subset(data, y != 0)

percentage <- filtered_data$y / sum(filtered_data$y) * 100


Species <- data.frame(
  x = c(filtered_data$x),
  y = c(percentage)
)


ggplot(Species, aes(x = x, y = y)) +
  geom_bar(stat = "identity") +
  labs(title = "Species Coverage", x = "Species", y = "% Avg Cover") +
  theme(axis.text.x = element_text(angle = 90, hjust = 1))

Quick summary of forage clips taken from quadrats of each transect. Histogram reflects the distribution for forage availability before mastication treatment.

##    date            transect       quadrat        GrossMass     
##  Mode:logical   Min.   :37.0   Min.   :1.000   Min.   : 0.000  
##  NA's:110       1st Qu.:42.0   1st Qu.:2.000   1st Qu.: 9.995  
##                 Median :47.5   Median :3.000   Median :11.595  
##                 Mean   :47.5   Mean   :3.009   Mean   :11.969  
##                 3rd Qu.:53.0   3rd Qu.:4.000   3rd Qu.:14.137  
##                 Max.   :58.0   Max.   :5.000   Max.   :26.990  
##    BagType         
##  Length:110        
##  Class :character  
##  Mode  :character  
##                    
##                    
## 

Outliers at low end (0’s) are not errors as there were quadrats without any plant life.