Website last updated 2020-10-07 13:46:19 by Benjamin Meyer (bemeyer@alaska.edu)
Juvenile Chinook salmon.
This document will summarize and plot observed growth of juvenile Chinook salmon in the Chena River. Data is primarily from summers 2019-2020, with some comparisons to data from summers 2008 2009 (Benson et al.), and 2015 (Huntsman and Falke et al).
# Plot 2019 and 2020 L-W relationships (overall)
fish %>%
filter(!is.na(FL_mm),
!is.na(Wt_g)) %>%
ggplot(aes(x = FL_mm, y = Wt_g)) +
geom_point() +
facet_grid(. ~ year) +
theme(strip.text = element_text(face="bold", size=14)) +
xlab("Fork Length (mm)") +
ylab("Weight (g)") +
ggtitle("Length-Weight Relationships")
We examined suspected outliers based on this plot and corrected a few data entry errors. We did not change apparent outliers when they matched the paper datasheet
## 2019
growth.summary.2019 <- fish %>%
filter(Species == "Chinook" & year(Date) == 2019) %>%
group_by(Date, General.Area) %>%
summarize(nFL = sum(!is.na(FL_mm)),
meanFL = mean(FL_mm, na.rm = T),
sdFL = sd(FL_mm, na.rm = T),
nWt = sum(!is.na(Wt_g)),
meanWt = mean(Wt_g, na.rm = T),
sdWt = sd(Wt_g, na.rm = T)
) %>%
mutate(seFL = sdFL / sqrt(nFL),
seWt = sdWt / sqrt(nWt)) %>%
filter(nWt > 1) %>%
select(Date,General.Area,nFL,meanFL,sdFL,seFL,nWt,meanWt,sdWt,seWt)
# save table to local directory
#write_csv(growth.summary.2019, "2019/2019 Results/growth.summary.2019.csv")
# consider making it a searchable table object
Growth Summary 2019 Table
growth.summary.2019
## 2020
growth.summary.2020 <- fish %>%
filter(Species == "Chinook" & year(Date) == 2020) %>%
group_by(Date, General.Area) %>%
summarize(nFL = sum(!is.na(FL_mm)),
meanFL = mean(FL_mm, na.rm = T),
sdFL = sd(FL_mm, na.rm = T),
nWt = sum(!is.na(Wt_g)),
meanWt = mean(Wt_g, na.rm = T),
sdWt = sd(Wt_g, na.rm = T)
) %>%
mutate(seFL = sdFL / sqrt(nFL),
seWt = sdWt / sqrt(nWt)) %>%
filter(nWt > 1) %>%
select(Date,General.Area,nFL,meanFL,sdFL,seFL,nWt,meanWt,sdWt,seWt)
# write_csv(growth.summary.2020, "2020/2020 Results/growth.summary.2020.csv")
Growth Summary 2020 Table
growth.summary.2020
# Plot the 2019 growth trajectories in terms of fork length and weight
growthFL.plot.2019 <- ggplot(data = growth.summary.2019, aes(x = Date, y = meanFL, color = General.Area)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanFL - seFL, ymax = meanFL + seFL), size = 0.5) +
scale_y_continuous(name = "Fork length (mm)") +
ggtitle( "2019 Fork Lengths")
growthFL.plot.2019
growthWt.plot.2019 <- ggplot(data = growth.summary.2019, aes(x = Date, y = meanWt, color = General.Area)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanWt - seWt, ymax = meanWt + seWt), size = 0.5) +
scale_y_continuous(name = "Weight (g)") +
ggtitle( "2019 Weights")
# Plot the 2020 growth trajectories in terms of fork length and weight
growthFL.plot.2020 <- ggplot(data = growth.summary.2020, aes(x = Date, y = meanFL, color = General.Area)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanFL - seFL, ymax = meanFL + seFL), size = 0.5) +
scale_y_continuous(name = "Fork length (mm)")+
ggtitle( "2020 Fork Lengths")
growthFL.plot.2020
growthWt.plot.2020 <- ggplot(data = growth.summary.2020, aes(x = Date, y = meanWt, color = General.Area)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanWt - seWt, ymax = meanWt + seWt), size = 0.5) +
scale_y_continuous(name = "Weight (g)") +
ggtitle( "2020 Weights")
growthWt.plot.2020
# compare plots of 2019 to 2020 data
growth.summary.all <- bind_rows(growth.summary.2019,growth.summary.2020) %>%
mutate(year = year(Date),
yday = yday(Date))
# create column with general date format
## not sure how to do this part!! using day of year for x-axes instead for now
#mutate(general_date = as.Date(Date, "%Y-%m"))
# fork length
growthFL.plot.all <- ggplot(data = growth.summary.all, aes(x = yday, y = meanFL, color = General.Area)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanFL - seFL, ymax = meanFL + seFL), size = 0.5) +
facet_grid(. ~ year) +
scale_y_continuous(name = "Fork length (mm)") +
theme(strip.text = element_text(face="bold", size=14)) +
ggtitle("2019-2020 Juvenile Chinook Fork Lengths")
#scale_x_date()
growthFL.plot.all
# weight
growthFL.plot.all.wt <- ggplot(data = growth.summary.all, aes(x = yday, y = meanWt, color = General.Area)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanWt - seWt, ymax = meanWt + seWt), size = 0.5) +
facet_grid(. ~ year) +
scale_y_continuous(name = "Weight (g)") +
theme(strip.text = element_text(face="bold", size=14)) +
ggtitle("2019-2020 Juvenile Chinook Fork Weights")
#scale_x_date()
growthFL.plot.all.wt
# Historical data
## Clean up the historic growth data---------
growth.summary.2008.2009 <- growth.2008.2009 %>%
mutate(Date = ymd(Date),
nFL = count,
nWt = ifelse(is.na(meanWt), NA, count),
General.Area = "Various Mainstem") %>%
select(Date,General.Area,nFL,meanFL,sdFL,seFL,nWt,meanWt,sdWt,seWt)
growth.summary.2015 <- growth.2015 %>%
filter(Habitat == "Main stem") %>%
mutate(nFL = Count,
nWt = Count,
seFL = sdFL / sqrt(nFL),
seWt = sdWt / sqrt(nWt),
Date = ymd(DateEstimated),
General.Area = "Various Mainstem") %>%
select(Date,General.Area,nFL,meanFL,sdFL,seFL,nWt,meanWt,sdWt,seWt)
growth.summary.all <- bind_rows(growth.summary.2008.2009, growth.summary.2015, growth.summary.2019,growth.summary.2020) %>%
mutate(Year = factor(year(Date)),
# Calculate day of year (Julian date)
DOY = yday(Date))
# Plot growth curves from all 5 years
# Plot the 2019 growth trajectories in terms of fork length and weight
growthFL.plot.all <- ggplot(data = growth.summary.all, aes(x = DOY, y = meanFL, color = Year)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanFL - seFL, ymax = meanFL + seFL), size = 0.5) +
# scale_x_date(name = "Date") +
scale_y_continuous(name = "Fork length (mm)") +
facet_grid(. ~ General.Area) +
theme(strip.text = element_text(face="bold", size=14)) +
ggtitle("Chena River juvenile Chinook salmon size data 2009 - 2020")
growthFL.plot.all
#ggsave("2020/2020 Results/Growth FL_all years.pdf", height = 6, width = 8)
#ggsave("2019 Results/Growth FL_all years.pdf", height = 6, width = 6)
Note that end-of-summer size in 2009 is larger than most other years. For example, in 2019 final weight was 0.385 g smaller compared to 2009.
growthWt.plot.all <- ggplot(data = growth.summary.all, aes(x = DOY, y = meanWt, color = Year)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanWt - seWt, ymax = meanWt + seWt), size = 0.5) +
# scale_x_date(name = "Date") +
scale_y_continuous(name = "Weight (g)", breaks = c(0:6)) +
ggtitle("Chena River Juvenile Chinook salmon weights 2009 - 2020")
growthWt.plot.all
#ggsave("2019/2019 Results/Growth Wt_all years.pdf", height = 6, width = 6)
# Plot weight curves from 2009, 2015, and 2019 only
growth.summary.3yr <- growth.summary.all %>%
filter(Year %in% c("2009","2015","2019"))
growthWt.plot.3yr <- ggplot(data = growth.summary.3yr, aes(x = DOY, y = meanWt, color = Year)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin = meanWt - seWt, ymax = meanWt + seWt), size = 0.5) +
#scale_x_date(name = "Date") +
scale_y_continuous(name = "Weight (g)", breaks = c(0:6)) +
ggtitle("Chena River Juvenile Chinook salmon weights 2009 - 2019")
growthWt.plot.3yr
ggsave("2019/2019 Results/Growth Wt_3 years.pdf", height = 6, width = 6)
Files used in this analysis stored in Dropbox repository; ~/Dropbox/Chena_Data_2020/Chena Drift Project Data_SFR/UAF Chena Drift Data/Fish.