We’ve been developing Observable Plot for a while now, and I’m thrilled to finally have it out in the public. Feel free to ask me any questions! Or share your plots on Observable and I can make suggestions. ;)
As soon as I saw this, I thought: 'how is this different from vega lite'.<p>An answer is here:
<a href="https://observablehq.com/@observablehq/plot-vega-lite" rel="nofollow">https://observablehq.com/@observablehq/plot-vega-lite</a><p>It'll be very interesting to see this develop. My initial reaction, as a vega-lite user is I'm not sure it's worth learning the new API immediately.<p>Having said that, I do find the idea of writing transforms in javascript compelling, and I can see there may be some situations in which this is a very elegant solution.<p>I think the idea of a plotting library allowing transforms is initially a little jarring - feels potentially like poor separation of concerns. But the more I think about it, the more it seems really logical: a lot of transforms (e.g binning) are done only for plotting purposes, in which case keeping them in the visualisation logic makes complete sense.<p>Looking further ahead (not sure this is possible in Plot yet, but giving its integration with Observable I'm sure it will be), the idea of a reactive model where charts can both react to user interactions, but also be the source of inputs (select a range, drag a bar, draw a distribution freehand) is very exciting.<p>Transforms and signals are both possible in vega/vega lite, but I can definitely see the benefit of them being cleaner and being able to accept arbitrary javascript.
How does this compare to Apache Echarts (<a href="https://echarts.apache.org/en/index.html" rel="nofollow">https://echarts.apache.org/en/index.html</a>) ?<p>p.s.
My favorite data exploration toolkit is Clickhouse + Tabix (it uses apache echarts).
e.g. <a href="https://tabix.io/doc/draw/Draw_Chart/" rel="nofollow">https://tabix.io/doc/draw/Draw_Chart/</a>
I'm so excited about this release. I use and like Vega-Lite, and this is openly inspired by that.<p>The ideas embedded in Vega-Lite are such good ideas that having an alternative implementation of them - especially with the pedigree of D3 and Observable behind them - is a big win. I can't wait to see what happens as Vega-Lite and Observable Plot continue to be inspired by each other in the future.
Exciting work; great to see the new wave of data science oriented JavaScript modules like this and Arquero focused on general principles such as the grammar of graphics and relational algebra.<p>If I could make a suggestion to the author: it would be a great selling point to include some interactivity in the example demo. This is really hard in R and Python, but easy in JavaScript, and would be a good/easy selling point to a lot of data science people.
This looks great! I spent a few months earlier this year learning and implementing D3 and while a little bit of a learning curve to pick up, it made sense once you got into the flow of things. Looking at this and amazed with how simple it could have been to use as a starting point if there was no need for customization. Great addition to the growing JS solutions for data needs. Another step and tool towards a JS suite of tools for data analysis!
If you're interested in learning more about Plot, we'll be streaming a free workshop about it on May 18th! Details here: <a href="https://www.meetup.com/observablehq/events/277855082/" rel="nofollow">https://www.meetup.com/observablehq/events/277855082/</a>
I've been reading about D3 and am thinking about integrating it into my React project. But I've come across a number of posts that discuss how React & D3 don't play nicely together because they both manipulate the DOM. [1] is a good starting point for this deep dive.<p>Does Observable Plot resolve those issues or do we need still to be careful integrating it into a React environment?<p>[1] <a href="https://medium.com/capital-one-tech/a-comparison-of-data-visualization-libraries-for-react-27f8fe409934" rel="nofollow">https://medium.com/capital-one-tech/a-comparison-of-data-vis...</a>
This is really neat! 'Been using observable for about a year now, and I <i>really</i> appreciate how easy it is to share notebooks with it. Circular dependencies can be fun, but that's not really unexpected considering the model y'all use.<p>How well does this framework do with something relatively complex like an animated choropleth? Vega-lite and D3 can do them both, but they can both get complicated pretty quickly.
I published a thin wrapper for React <a href="https://github.com/iddan/plot-react" rel="nofollow">https://github.com/iddan/plot-react</a>