Sean
unread,Apr 24, 2009, 3:19:57 PM4/24/09Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to plotkit
I've been developing a project using PlotKit. I want to be able to
draw a single graph with multiple lines of different colors. Here's
how I've been doing it:
var Color = MichiKit.Color.Color;
var layout = new PlotKit.Layout("line", {});
layout.addDataset("1", [...]);
layout.evaluate();
var params = { shouldFill: false, strokeColor: Color.fromName
("red") };
var plotter = new PlotKit.CanvasRenderer(canvasElement, layout,
params);
plotter.render();
var layout2 = new PlotKit.Layout("line", {});
layout2.addDataset("2", [...]);
layout2.evaluate();
var params2 = { shouldFill: false, strokeColor: Color.fromName
("green"), drawBackground: false, drawXAxis: false, drawYAxis:
false };
var plotter2 = new PlotKit.CanvasRenderer(canvasElement, layout2,
params2);
plotter2.render();
(Because I want my lines to be drawn in different colors, I can't just
add multiple datasets to a single layout object, as far as I
understand it.)
This technique works well on Firefox, but when I try it on IE7, an
exception is thrown from the innards of PlotKit on the second
CanvasRenderer instantiation: "CanvasRenderer() - <canvas> needs to be
enclosed in <div>". My canvas object was definitely originally
wrapped in a div. If I print the nodeName of my canvas object just
before instantiating that second CanvasRenderer, it's "#document-
fragment".
This is using PlotKit version 0.8, by the way.
Any ideas or alternate approaches? Thanks in advance for any help.