This is a good start, but once you have the display, by far the best way to edit the parameters is by direct interaction with it, instead of via sliders. :-)
That's a very good point, but I'm not sure how it could be generalized. Since the inputs can be any kind of view (not only sliders), you'd have to ensure that the widget is updated accordingly.
Perhaps the canvas should be replaced with an SVG. Then any element (line, label etc) could receive an optional ID argument, through which the element could be fetched in order to attach mouse events. But then the display becomes stateful, you'd have to ensure that existing elements are not removed on updates, and we're getting closer to just recreating d3. Figuring out where to draw the line (figuratively) will be one of the main challenges.
I'd really love to expand the range of examples in order to create a better intuition for the applications, hence the call for use cases. :)