Built with the help of Observable notebooks (see README).

https://observablehq.com/@training/replicating-nhsrplotthedots-spcs

Calculating mean used a function from D3:

https://talk.observablehq.com/t/histogram-with-average-line/7099 https://observablehq.com/@d3/d3-mean-d3-median-and-friends

This uses NHSRplotthedots for the plotly chart and is the development version (not CRAN). The only interactivity is from plotly itself. It might be that the data needs to be pre calculated (using NHSRplotthedots to get that possibly) but would mean that there is potentially a huge dataset needed to be manipulated at the output side.

Trying out code to link the codes to a reactable from the timelyportfolio blog