// Computed in terms of radians / PI, because I can then 'read' the data more easily
boundaries=({
bl:fx=>acos(sqrt(2-1/pow(cos(fx*PI),2)))/PI,
tl:fx=>-acos(sqrt(2-1/pow(cos(fx*PI),2)))/PI,
br:fx=>asin(tan(PI/4-fx*PI/2))/PI,
tr:fx=>-asin(tan(PI/4-fx*PI/2))/PI,
})
Purpose-built for displays of data
Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.