[IPython-dev] SVG figures status report
Ludwig Schwardt
ludwig.schwardt at gmail.com
Tue Jun 26 05:53:54 EDT 2012
Hi Bob and Fernando,
On Tuesday 26 June 2012 at 10:37 AM, ipython-dev-request at scipy.org wrote:
> Thanks for this detailed and careful assessment of the situation.
> It's an unfortunate state of affairs, especially as it strongly
> tempers my enthusiasm for tools like d3.js being truly effective in
> the notebook. But better to know than to enthusiastically build
> things that will in practice only work for toy problems but will
> inescapably fail to scale in more complex production environments.
>
>
Thanks for the report from my side as well. This has also been our experience with large SVG images in the past.
Simon and I have been concerned with performance and scalability ever since the birth of the mplh5canvas backend. Our original use-case is to visualise datasets that are too large to copy to your local machine. We serve mplh5canvas from the remote machine with the dataset and use the browser on the local machine to view it. We want to be able to visualise millions of points, also in animated form. Hopefully mplh5canvas can get there someday :-) We also want to minimise traffic between the server and the browser (making use of e.g. matplotlib's path simplification), which seems to be a problem for d3.js.
>
> In this spirit, have you had a chance to play with tools like this?
>
> http://paperjs.org/about/
I have also recently stumbled upon Paper.js. Libraries like these have the potential to greatly simplify the mplh5canvas backend as it can directly accept the paths produced by matplotlib. The downside is an extra dependency for probably little speed-up, as the performance mostly depends on the functionality exposed by the HTML5 Canvas itself as far as I can tell.
Regards,
Ludwig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20120626/7c2ee872/attachment.html>
More information about the IPython-dev
mailing list