SciRuby/sciruby — Issue #9: Interactive, 3D plots
Author: mohawkjohn
Created: 2011-11-02 21:16:23+00:00
State: open
Labels: more design needed

Rubyvis is based on Protovis, which allows for a certain level of user interaction. Unfortunately, it's not clear how Rubyvis can be interactive in a way that is portable.

Let's say you render an SVG in SciRuby::Plotter. You could build a custom SVG rendering library which might allow elements to be re-sized or moved. But what if you wanted to display that SVG in a web browser? The interactive portion would be lost.

Alternatively, assume you render an SVG and send it to a browser, and then write Javascript to enable interactivity. Same problem as before, but in reverse: now you can't get the interactivity in SciRuby::Plotter, which doesn't understand Javascript. Plus, the user now has to write in Ruby and Javascript, which is annoying.

There is likely no easy solution to this sort of problem, short of finding a way to interpret Ruby in a web browser. But I include it in the issue tracker for either (a) that day when someone really wants a challenge, or (b) a future redesign of plotting.

Relatedly, Protovis has limited 3D capabilities. Perhaps someone can come up with a solution that enables rendering of 3D plots, written in pure Ruby, in a web browser.