Good job, this looks extremely expressive and with fewer corner cases ("dark knowledge") than MPL/SNS, and unlike Altair/Plotly doesn't require a whole browser to display the output!
Still, I'd like to ask if you considered alternatives to MPL for the back-end. It's a venerable but ancient project with years of accumulated technical debt, and I'm sure you had to deal with lots of inconsistencies there.
For example, PyQtGraph is an alternative with a clear class hierarchy and can handle large-scale datasets without slowing down (while anything non-trivial in MPL has you wait seconds to render).
(I'd love to hear more suggestions that don't require a JS engine and don't build on MPL.)