<div dir="ltr"><div><div>I'm not aware of IPython providing anything other than the generic (and useful) infrastructure for this plotting usecase, but there exists a comm based proof-of-concept interactive visualisation produced by Jason Grout in <a href="https://github.com/matplotlib/matplotlib/pull/2524">https://github.com/matplotlib/matplotlib/pull/2524</a> which may be of interest.<br>
<br></div>It is also worth noting that the WebAgg backend in matplotlib is a fully <span>bona fide backend available since v1.3.<br><br></span></div><span>Essentially the only reason there isn't an interactive matplotlib IPython interface already is because nobody with the right technical expertise has had an opportunity to do - I don't believe there are any remaining technical hurdles, and I don't even think it is a big piece of work at this point.<br>
</span><div><span><br></span></div><div><span>HTH,<br><br>Phil<br></span></div><div><span><br><br></span></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 3 April 2014 10:47, Cyrille Rossant <span dir="ltr"><<a href="mailto:cyrille.rossant@gmail.com" target="_blank">cyrille.rossant@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dear IPython developers,<br>
<br>
Let me introduce you to Mustafa Kaptan (in CC), a student who has<br>
started to contribute to Vispy [1], and who has made an application to<br>
GSoC this year. He'd be interested in integrating Vispy in the IPython<br>
notebook for high-performance interactive visualization in the<br>
browser. He already made a nice proof of concept [2]. We're likely to<br>
need your help soon enough!<br>
<br>
There are many different and complementary approaches. For now, we've<br>
chosen to start with the simplest approach: the server renders a<br>
figure with OpenGL, outputs a PNG, and sends it to the browser with<br>
WebSockets and Tornado. Javascript captures user actions (mouse<br>
clicks, mouse moves, keystrokes...) and sends them in return to the<br>
server. I think that is similar to a proof of concept for matplotlib<br>
made by Michael Droettboom some time ago [3].<br>
<br>
IPython 2.0 now offers the right architecture for this. I was<br>
wondering whether there was anyone on your side working on something<br>
like this already? I think it would make sense to have common<br>
protocols, interfaces and code for matplotlib, Vispy, and other<br>
visualization libraries. Sending PNG and user events in JSON, creating<br>
a sort of "distributed" event loop, all seem generic enough to me. It<br>
would be too bad if we all duplicated our efforts for the same thing.<br>
<br>
Where should we start? Comms, something else? Also, we'd like to reuse<br>
some of this architecture for a slightly different approach. Instead<br>
of letting the server render the figure with OpenGL, we'd just send<br>
OpenGL commands and binary data to the browser (client-side rendering<br>
with WebGL).<br>
<br>
Best regards,<br>
Cyrille<br>
<br>
[1] <a href="http://vispy.org/" target="_blank">http://vispy.org/</a><br>
[2] <a href="https://github.com/mfkaptan/experimental/tree/master/online_backend/tornado" target="_blank">https://github.com/mfkaptan/experimental/tree/master/online_backend/tornado</a><br>
[3] <a href="http://mdboom.github.io/blog/2012/10/11/matplotlib-in-the-browser-its-coming/" target="_blank">http://mdboom.github.io/blog/2012/10/11/matplotlib-in-the-browser-its-coming/</a><br>
_______________________________________________<br>
IPython-dev mailing list<br>
<a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
</blockquote></div><br></div>