R/plot_exploitation.R

Defines functions plot_exploitation

plot_exploitation <- function(year, folder, model, model_name){

  if (!dir.exists(here::here(year, folder, "figs"))) {dir.create(here::here(year, folder, "figs"))}

# plot catch/biomass
rep <-  readLines(here::here(here::here(year, "base", "base.rep")))
std <- read.delim(here::here(here::here(year, "base", "base.std")), sep="", header = TRUE)

filter(catch, Year == year) %>%
  left_join(read.delim(here::here(here::here(year, "proj", "author_f", "bigsum.dat")), sep="", header = TRUE) %>%
              filter(Year == year, Alt == 2) %>%
              dplyr::select(Year, value = Total_Biom))

std %>%
  filter(name=="tot_biom") %>%
  bind_cols(filter(catch, Year < year)) %>%
  filter(Year >= 1991) %>%
  dplyr::select(Year, Catch, value, std.dev) %>%
  bind_rows(filter(catch, Year == year) %>%
              left_join(read.delim(here::here(here::here(year, "proj", "author_f", "bigsum.dat")), sep="", header = TRUE) %>%
                          filter(Year == year, Alt == 2) %>%
                          mutate(value = Total_Biom * 1000) %>%
                          dplyr::select(Year, value))) %>%
  mutate(std.dev = ifelse(is.na(std.dev), std.dev[Year==year-1], std.dev)) %>%
  mutate(lci = value - std.dev * 1.96,
         uci = value + std.dev * 1.96) %>%
  mutate(perc = Catch / value,
         lci = Catch / lci,
         uci = Catch / uci,
         mean = mean(perc)) %>%
  dplyr::select(Year, value, mean, perc, lci, uci) -> df

df %>%
  ggplot(aes(Year, perc)) +
  geom_line() +
  geom_ribbon(aes(ymin = lci, ymax = uci), alpha = 0.2) +
  geom_hline(yintercept = df$mean, lty = 3) +
  expand_limits(y = c(0, 0.08)) +
  scale_x_continuous(breaks = funcr::tickr(df, Year, start = 1990)$breaks,
                     labels = funcr::tickr(df, Year, start = 1990)$labels) +
  xlab("\nYear") +
  ylab("Catch/Biomass\n")

ggsave(here::here(year, "figs", "catch_bio.png"), width = 6.5, height = 5.5, units = "in", dpi = 200)

}
BenWilliams-NOAA/groundfishr documentation built on May 11, 2022, 7:41 p.m.