attach("data/North_Sea_Herring_2015.RData")
rbya <- fishvice::flstock_to_rbya(NSH)
library(dplyr)
sur <- fishvice::flindices_to_rbya(NSH.tun)
library(ggplot2)

On observations

Fproxy

obs <- 
  rbya %>% 
  select(year, age, oC, f) %>% 
  left_join(sur %>% 
              filter(sur == "HERAS") %>% 
              select(year, age, oU),
            by = c("year", "age")) %>% 
  mutate(yc = year - age,
         fproxy = oC/oU)

obs %>% 
  filter(age > 0, year >= 1989) %>% 
  ggplot(aes(year, fproxy)) +
  geom_line() +
  facet_wrap(~ age, scale = "free_y")
## Warning: Removed 1 rows containing missing values (geom_path).

On process error

rbya <- 
  rbya %>% 
  filter(year < max(year)) %>% 
  group_by(age) %>% 
  mutate(m.rel = m - mean(m)) %>% 
  ungroup()
ggplot(rbya) +
  geom_line(aes(year, m, group = age)) +
  expand_limits(y = 0)

rbya %>% 
  ggplot() +
  geom_line(aes(year, m.rel, group = age)) +
  expand_limits(y = 0)

pro <- 
  rbya %>% 
  fishvice::sam_process_error(plot_it = TRUE)
x <-
  pro$rbya %>% 
  mutate(agegroups = ifelse(age == 0,"0",
                            ifelse(age == 1, "1", "2+"))) 
pro$rbya %>%
  ggplot() +
  geom_line(aes(year, m, group = age)) +
  geom_line(aes(year, m+z.d, group = age), col = "red") +
  geom_smooth(aes(year, m+z.d), span = 0.1) +
  facet_wrap(~ age, scale = "free_y") +
  labs(x = NULL, y = NULL, title = "Input M (black) and M + process error (red)")

pro$rbya %>%
  filter(age > 1) %>% 
  ggplot() +
  geom_line(aes(year, m, group = age)) +
  geom_line(aes(year, m+z.d, group = age), col = "red") +
  geom_smooth(aes(year, m+z.d), span = 0.1) +
  labs(x = NULL, y = NULL, title = "Input M (black) and M + process error (red)")

d <-
  pro$rbya %>% 
  select(year, age, z.d) %>% 
  left_join(rbya %>% select(year, age, m.rel))
## Joining by: c("year", "age")
p <- 
  d %>% 
  filter(age > 1) %>% 
  ggplot() +
  geom_line(aes(year, m.rel, group = age), col = "red") +
  geom_point(aes(year, z.d), col = "blue") +
  geom_smooth(aes(year, z.d), span = 0.1) +
  labs(x = NULL, y = NULL)
p

p + facet_wrap(~ age, scale = "free_y")