3 ms·
For those looking for higher level interfaces for interactive visualization via D3, check out Vega/Vega-Lite [1] and Altair [2] (a Python library based on Vega-
by jedbrown 6y ago
For those looking for higher level interfaces for interactive visualization via D3, check out Vega/Vega-Lite [1] and Altair [2] (a Python library based on Vega-Lite).
[1] https://vega.github.io/ https://vega.github.io/
[2] https://altair-viz.github.io/ https://altair-viz.github.io/
[3] https://vega.github.io/vega/about/vega-and-d3/ https://vega.github.io/vega/about/vega-and-d3/
- domoritz 6y agoD3 started out as an academic project and Vega/Vega-Lite come from the same lab. Also, while Vega does not generate D3 code (Vega is a declarative visualization language and reactive runtime), it uses the D3 libraries internally and is heavily inspired by some of the core principles (e.g. data join).
- kqr 6y agoOne of the things I really like about D3 is how there's nothing it won't do, precisely because it's a lower level interface. With many higher level interfaces, things go great until I eventually run into a situation where I would like to do a tiny tweak that would improve readability a lot, and it turns out the higher level interface does not support that, so I'm out of luck. That said, I haven't tried Vega. What are your experiences in terms of that problem with Vega?
- gampleman 6y agoI think they serve different use cases. I love Vega-lite for exploratory analysis and for quick prototyping. You can get fantastically complex visualisations very quickly with it. But for building "production" visualisations, I think the low level approach is better: you'll get much smaller bundle sizes, you have much more control over the final look and that control tends to be expressed "naturally" rather than in convoluted configuration.
- awake 6y agoI would not even touch vega, it’s the engine vega lite is built on. Vega lite is a declarative json format for representing charts. The spec is very well thought out and you can rapidly iterate on prototypes. Altair is a python wrapper for vega lite
- huskyr 6y ago+1. It's amazing what you can do with Vega(Lite) and/or Altair in little time. But once you want to build something that performs on the web you really need to rewrite things using another library, like D3.