setwd("C:/flrpapers/erp_nea_mackerel/Rmd")

Figure 1 Stock recruitment relationship fits

Figure 2 Production functions

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9 Catch

Figure 10 SSB

Figure 11 F

Figure 12 Recruits

Figure 13 BRebuild

Figure 14 Forage

Figure 15 ABI

Figure 16 ABI

[[1]]
geom_ribbon: na.rm = FALSE
stat_fl_quantiles: probs = c(0.25, 0.75), na.rm = FALSE
position_identity 

[[2]]
geom_line: na.rm = FALSE
stat_fl_quantiles: probs = 0.5, na.rm = FALSE
position_identity 

[[3]]
geom_ribbon: na.rm = FALSE
stat_fl_quantiles: probs = c(0.05, 0.95), na.rm = FALSE
position_identity 

[[4]]
geom_line: na.rm = FALSE
stat_fl_quantiles: probs = 0.5, na.rm = FALSE
position_identity 

[[5]]
mapping: x = ~year, y = ~data, colour = ~iter 
geom_line: na.rm = TRUE, orientation = NA
stat_identity: na.rm = TRUE
position_identity 

[[6]]
mapping: xmin = ~-Inf, xmax = 2020, ymin = ~-Inf, ymax = Inf 
geom_rect: linejoin = mitre, na.rm = FALSE
stat_identity: na.rm = FALSE
position_identity 

[[7]]
mapping: xmin = ~-Inf, xmax = 2018, ymin = ~-Inf, ymax = Inf 
geom_rect: linejoin = mitre, na.rm = FALSE
stat_identity: na.rm = FALSE
position_identity 

[[8]]
mapping: xmin = ~-Inf, xmax = 2010, ymin = ~-Inf, ymax = Inf 
geom_rect: linejoin = mitre, na.rm = FALSE
stat_identity: na.rm = FALSE
position_identity 

[[9]]
mapping: yintercept = 1 
geom_hline: na.rm = FALSE
stat_identity: na.rm = FALSE
position_identity 

[[10]]
mapping: yintercept = ~ref 
geom_hline: na.rm = FALSE
stat_identity: na.rm = FALSE
position_identity 

[[11]]
mapping: yintercept = ~ref 
geom_hline: na.rm = FALSE
stat_identity: na.rm = FALSE
position_identity 

Figure 17 SHiT plot

Draft for Supplementary Materials: Explanation of Colour Derivation in Figure 17 (SHiT Plot)

The SHiT plot (Figure 17) presents a traffic-light style visual summary of the performance of multiple reference points across scenarios, periods, and recruitment regimes. The colours—green, gold, and red—indicate the probability that each indicator meets or exceeds its management target or falls below its limit, thereby providing an intuitive assessment of stock and ecosystem status.

Data Preparation and Probability Calculation

For each performance metric (SSB, F, Yield, ABI, Forage, Rebuild), simulated values were extracted from the Operating Model (OM) outputs for each combination of scenario, period, and recruitment regime. The data were grouped accordingly, and empirical cumulative distribution functions (ecdf) were computed to estimate the probability that the metric met or exceeded a predefined reference level.

  • For metrics where higher values are better (e.g., SSB, ABI, Forage), the probability was calculated as $ P(X reference) = 1 - ecdf(reference) $.
  • For metrics where lower values are better (e.g., fishing mortality F), the probability was calculated as $ P(X reference) = ecdf(reference) $.
  • For Yield, the median value relative to the reference was used instead of a probability.

Breakpoints and Categorization

Probabilities or median values were binned into three categories corresponding to management status:

Metric Breakpoints (cut points) Interpretation of Categories
SSB \(c(0, 0.5, 0.66, 1)\) Red (<0.5), Gold (0.5–0.66), Green (>0.66)
F \(c(0, 0.33, 0.5, 1)\) Red (<0.33), Gold (0.33–0.5), Green (>0.5) (Note: low F is better)
Yield \(c(0, 0.8, 1, 10)\) (median relative to ref) Red (<0.8), Gold (0.8–1), Green (>1)
ABI \(c(0, 0.5, 0.66, 1)\) Same as SSB
Forage \(c(0, 0.5, 0.66, 1)\) Same as SSB
Rebuild \(c(0, 0.95, 1)\) Red (<0.95), Green (≥0.95) (two categories only)

These breakpoints were chosen to reflect management risk tolerances and provide meaningful distinctions between poor, cautionary, and good performance.

Colour Mapping

Each category was assigned a colour for plotting:

  • Green: High probability of meeting or exceeding the target (good status)
  • Gold: Intermediate probability (cautionary status)
  • Red: Low probability or failure to meet the target (poor status)

The colour assignments were merged with the categorized data and used in the ggplot2 plotting call to colour the points accordingly.

Implementation in R

The categorization and colour assignment were implemented using cut() on the ecdf results or median values, followed by merging with a lookup table of colours. For example, for SSB:

tarS = ddply(dtS, .(Period,OM,SRR,Recruits), with, cut(ecdf(data)(1), breaks=c(0,0.5,0.66,1)))
tarS = merge(tarS, data.frame(V1=unique(tarS$V1), colour=c("red","gold","green")))

Similar code blocks were used for other metrics with metric-specific breakpoints.

Summary Table of Breakpoints and Colour Assignments

Metric Probability or Median Used Breakpoints Colours (Low to High)
SSB Probability \(P(X \geq 1)\) 0–0.5, 0.5–0.66, 0.66–1 Red, Gold, Green
F Probability \(P(X \leq 1)\) 0–0.33, 0.33–0.5, 0.5–1 Red, Gold, Green
Yield Median relative to reference 0–0.8, 0.8–1, >1 Red, Gold, Green
ABI Probability \(P(X \geq 1)\) Same as SSB Red, Gold, Green
Forage Probability \(P(X \geq 1)\) Same as SSB Red, Gold, Green
Rebuild Probability \(P(\text{years} \leq 8.5)\) 0–0.95, 0.95–1 Red, Green (no gold)

This approach provides a transparent, probabilistic basis for the traffic-light colours, facilitating rapid interpretation of complex simulation outcomes in the SHiT plot.

Back to Top

Software Version

Back to Top

Funding

Back to Top

References

Back to Top