Bokeh is a very cool charting library that is distinguished by a
focus on interactivity in the browser. Each chart is an html
file with an embedded bokeh javascript library - the server
generates JSON from the object model and the client take this and
renders it. There are ways to register callbacks on the server,
so the client can click on a data point or some user interface
object and the server can update the canvas and have the client
redraw it.
It also has a matplotlib interface, which makes porting legacy
code easier.
At the moment there are bindings in python, R, Julia, and scala.
I was thinking about starting to work on D bindings, because I do
not see an alternative to bokeh without reinventing the wheel but
for the time being this means using D to talk to bokeh via pyd
which is awkward.
Gallery:
http://bokeh.pydata.org/en/latest/docs/gallery.html
Ref docs here:
http://bokeh.pydata.org/en/latest/docs/reference.html
Julia bindings here:
https://github.com/bokeh/Bokeh.jl/tree/master/src
Scala here:
https://github.com/bokeh/bokeh-scala
Python here:
https://github.com/bokeh/bokeh/tree/master/bokeh
I haven't got very far with it, and won't be able to immediately.
But if anyone happens to have thoughts on how best to approach,
I would appreciate it. I would obviously open source the
project. As far as I can see one doesn't need to depend on the
dynamic reflection aspects of these languages, so it looks like
it would just be a question of translating the objects to structs
and classes, and then grappling with the JSON translation.
Laeeth.