Hacker Newsnew | past | comments | ask | show | jobs | submit | jmmease's commentslogin

(a current Altair maintainer and a former plotly.py maintainer here)

Plotly is definitely a great option as well, and it can do a bunch of things Vega-Altair is not designed for. One comment, just in case you weren't aware, is that there is a relatively new library that provides good integration between Altair and Dash: https://github.com/altair-viz/dash-vega-components. It even makes it possible to access Altair selection states in Dash callbacks so that you can have other dashboard components respond to selections.


Thank you !

Wasn't aware of that. Are there any plans to improve the interactivity - by that I mean scale on X / Y independently - 'plotly' like ? I know you can bind specifically to one axis, when generating the chart, however, what I usually want is to be able to just zoom in on a specific axis when looking at the chart - Plotly is really great as the behaviour is depending of what you select - a rectangle is just a rectangle (zoom on both axes), a vertical selection zooms on Y axis, and horizontal one on X axis.


(Disclaimer: I'm a Vega-Altair maintainer)

Thanks for the feedback and for the kind words! All of these drawbacks are fair, just a couple of comments.

There is an experimental package called altair_tiles that makes is possible to add OSM-style maptile backgrounds to Altair charts. See https://github.com/altair-viz/altair_tiles. This is mostly for static charts at the moment, as it doesn't integrate well with pan/zoom yet.

As you mentioned, VegaFusion is able to remove unused columns in most cases. (And if it doesn't for a particular case, please open an issue!).


Thanks for the feedback! Looking forward to `altair_tiles`. And again, great work, very much appreciate it!

Maybe while you're here: Is there any desire to implement box-zoom (or x-range zoom) at any point in the future?


Box zoom would need to be added to Vega-Lite first, and there has been some discussion around it in https://github.com/vega/vega-lite/issues/4742. Bottom line is that there's nothing blocking its implementation, someone just needs to do the work in Vega-Lite. And once released in Vega-Lite, Altair would pick it up automatically with how we generate the Altair API from the Vega-Lite schema.


Image export before Altair 5 was a bit complicated because it required either selenium plus a system web browser, or a node.js installation. In Altair 5, we switched to using vl-convert for image export, which is just a regular Python wheel with no external dependencies. So now, `chart.save("file.png")` should be just as easy to use as matplotlib's savefig!

(Disclaimer: I'm a Vega-Altair maintainer and the author of vl-convert)


VegaFusion author here. Happy to answer questions if anyone is interested in learning more!


Hi All, let me know if you have any questions about the new release (or anything else).

The tech behind the new static image export support is pretty interesting. It's the only static image export approach I'm aware of, for a Python+JavaScript visualization library, that's not selenium-based.


I spent hours a day juggling for ~4 years in my mid teens (in my 30s now) and got up to juggling 8 balls.

I find numbers juggling (say 5 or more) to be almost therapeutic. It requires a reasonable amount of physical exertion, and it just pulls you into a flow state. All of your mental and physical focus is concentrated on maintaining this ephemeral pattern, and there's no room for anything else... until the pattern falls apart :-)


Do you have ipywidgets >= 7.2 installed (See install instruction at https://github.com/plotly/plotly.py)?

ipywidgets is an optional dependency and FigureWidget won't be available without it.


Thanks - that solved it! Works great now.


Rock solid export of high-quality static images is really important to me too. Fortunately the hard part is already done (in orca). Integrating orca into plotly.py is the very next feature I'm going to start working on after I get through SciPy next week, so hopefully it won't be too much longer...


I am really happy to hear that, thanks a lot for your efforts!

I really think having interactive plots for rapid prototyping/outlier inspection/plot design and then being able to use the same code to produce static, publication grade graphs or doing batch processing, will allow for a really efficient workflow!


That's a really hard name to search for! I found it: https://github.com/plotly/orca


Actually, you don't need to sink any investment into a commercial ecosystem here!

plotly.py and the plotly.js rendering library are both MIT licensed, developed in the open on GitHub, and totally self-contained.

Everything in the technology stack used in the announcement post is free, open source, self-contained, usable offline, and doesn't require an account. The plot.ly cloud integration is totally optional.


Cool! I'll have to give it a look then!


Cool! Here are a few ways to get the interactive visualizations elsewhere (outside of the notebook).

1) You can save them to a standalone, self-contained, html file: See https://community.plot.ly/t/proper-way-to-save-a-plot-to-htm...

2) You can save them to an html <div> element and embed them in another web page: See https://stackoverflow.com/a/38032952/4551895

3) You can upload them to plot.ly and share the link


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: