Is there anyone that has worked on anything similar in matplotlib, i.e.,
a backend that would provide the interactive features of the GUI
backends in a web browser? Over in the Sage project, we are very
interested in something like this. While I can't volunteer at the
moment to write something like a canvas backend for matplotlib (or maybe
an interactive svg backend using javascript as well), I'm interested in
working on this as I have time. We also might have other people in the
Sage project interested in working on this, though we'd have to come up
to speed on implementing a matplotlib backend first.

The starting place for implementing a backend is
matplotlib/backends/backend_template.py which has instructions on how
to proceed, which methods need to be overridden, etc. Navigation
will be a bit trickier for an html5 backend because we have only
implemented navigation for traditional GUI canvases so far.
Navigation is enabled by connecting up the backend native events to
the backend_bases.FigureCanvasBase events (button_press_event, etc).
matplotlib.backends.backend_bases.NavigationToolbar2 glues everything
together, so you might need to hack a custom html NavigationToolbar2
subclass, as we do for each GUI backend. Should be interesting! I
don't think anyone on our side has done anything with this yet, though
Charlie Moad did do an AJAZ enabled Turbogears mpl backend at one
point...

ยทยทยท

On Tue, Feb 24, 2009 at 9:53 AM, <jason-sage@...691...> wrote:

A few weeks ago, Fernando pointed out the new canvas backend to gnuplot:

Is there anyone that has worked on anything similar in matplotlib, i.e.,
a backend that would provide the interactive features of the GUI
backends in a web browser? Over in the Sage project, we are very
interested in something like this. While I can't volunteer at the
moment to write something like a canvas backend for matplotlib (or maybe
an interactive svg backend using javascript as well), I'm interested in
working on this as I have time. We also might have other people in the
Sage project interested in working on this, though we'd have to come up
to speed on implementing a matplotlib backend first.