-
-
Notifications
You must be signed in to change notification settings - Fork 403
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Start matplotlib guide #1658
Start matplotlib guide #1658
Conversation
jordansamuels
commented
Jun 30, 2017
- follow intro style of bokeh guide
- copy some info from Exporting guide
- add new animated GIF example
* follow intro style of bokeh guide * copy some info from Exporting guide * add new animated GIF example
Thanks! Bokeh just added SVG and PNG exporting, which is supported by HoloViews, so maybe it's best if this notebook just points to the relevant bit of Exporting when discussing output like that? Exporting is no longer matplotlib-only. |
What I would think would be useful to add to this notebook is a discussion of how the matplotlib backend works, in comparison to the Bokeh or plotly backends, and what the pros and cons are. Basically, for static output the matplotlib backend renders each the plot (or each plot, for a HoloMap) to a PNG, and then HoloViews generates JavaScript that provides widgets to select between these pre-rendered PNGs. This process is very different from the Bokeh or Plotly backends, which generate JavaScript/HTML directly that contains specific glyphs corresponding to the data in the plot. The matplotlib backend approach has the advantage that the output size is largely independent of the amount of data involved, and that the resulting output requires less JavaScript and is overall simpler once rendered, which also makes it more future-proof as a saved plot with widgets. The bokeh/plotly approach has the advantage that these backends provide interactivity within the plot, even in a static HTML/JS output, which opens up a wide range of possible user-visible functionality such as zooming in to see detail, dynamically re-rendering plots on zooming with Datashader, and so on . At least in principle, for small numbers of datapoints spread across many frames of a HoloMap, the Bokeh/Plotly approach could have much smaller file sizes, but I haven't done benchmarking to see where the crossover point would be. |
You could also mention that the matplotlib and plotly backends provide 3D plotting with HoloViews, unlike the Bokeh backend. And at the moment, subfigure labels are only supported for matplotlib. Can't think of any other mpl-specific functionality... |
I agree with all your comments @jbednar. That said this seems like a reasonable start and I'd be open to merging it and improving it later. |
I agree with Philipp and I'll merge now. I've recorded Jim's suggestions on the newly created wiki page for this user guide here. |
This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |