@gbson I'd highly recommend using Vega-Lite for visualization needs. It's a declarative dataviz language, and the visualization specifications themselves are actually Just Data (TM). So it's all very Clojuresque in that sense. It also supports interactivity, and a dataflow specification which lets you dynamically compute visual properties based on (e.g.) data selections, clicks, etc.
I made a wrapper library called Oz which lets you create these visualizations from a Clojure REPL, or from a Reagent application if you want to include a visualization as part of an app. It's also evolved into a somewhat general scientific document processing toolkit, complete with live code reloading. Please consider checking it out: https://github.com/metasoarous/oz
@jsa-aerial has also built a set of tools for working with these visualizations (Saite & Hanami). They come at the problem from a somewhat different angle, which may resonate with you, so consider checking them out as well.
Thanks @jsa-aerial! @gbson: Bottom line is there are lots of options and tools for working with Vega-Lite & Vega in Clojure. Jump in! The water is warm :-)
Hehe I will!
On another note, if anyone here is interested in #covid-19 epidemic modeling, someone just put out a pretty impressive python package for epidemic modeling. It goes well beyond the standard S(E)IR model(s) by introducing network effects, detection rates, etc. Might be a fun project for someone interested in tinkering with libpythonclj! https://twitter.com/RS_McGee/status/1242949797247508480
@gbson https://github.com/jsa-aerial/hanami is a library that enables building visualization applications using Vega-Lite/Vega. These can be client-server or client only. It provides several 'high leverage' capabilities for this and directly supports https://re-com.day8.com.au/#/introduction as well. https://github.com/jsa-aerial/saite is an application built with Hanami and also CodeMirror, MathJax, Paredit, http://et.al. It is more in the notebook category, but has much more capabilities than your typical notebook
Oh, one other thing you might be interested in. If you use the uberjar variant of Saite (note it is now version 0.7.1 I need to update the readme) on installation, it will also install the MKL libraries needed for #uncomplicate Neanderthal high performance matrix and linear algebra computing library. Also installs an example document showing its use.