Re:Highcharts: JavaScript Charts that don't suck
by bd on Tuesday December 01, 2009 @05:24PM
(#970940)
Raphaël is pretty fast even on Explorer:
Re:Highcharts: JavaScript Charts that don't suck
by henriklied on Wednesday December 02, 2009 @09:57AM
(#972129)
You also have the gRaphaël library, Raphaël specifically for charts: http://g.raphaeljs.com/
Re:Highcharts: JavaScript Charts that don't suck
by rbanffy on Wednesday December 02, 2009 @08:20AM
(#971992)
Thanks. MIT trumps proprietary any day.
Re:Highcharts: JavaScript Charts that don't suck
by benmathes on Tuesday December 01, 2009 @05:38PM
(#970977)
This terrible slowness in IE with flot is because IE doesn't support the <canvas> tag, so it has to be simulated in javascript. In Firefox and Chrome Flot uses the <canvas> tag, and therefore native browser code, to do the drawing.
Re:Highcharts: JavaScript Charts that don't suck
by gruseom on Wednesday December 02, 2009 @12:43AM
(#971588)
That's precisely why the only acceptable way to do this is with VML on the IE side. VML is surprisingly good for something so old. It's essentially SVG avant la lettre. Its main problem is that it's very poorly documented.
Re:Highcharts: JavaScript Charts that don't suck
by donalm on Wednesday December 02, 2009 @07:18AM
(#971926)
Flot requires excanvas.js to simulate the canvas in IE. Internally excanvas.js uses VML.
Re:Highcharts: JavaScript Charts that don't suck
by gruseom on Wednesday December 02, 2009 @11:39AM
(#972345)
I said that an acceptable solution would have to use VML, not that a VML solution would have to be acceptable. The Canvas API is completely dissimilar to VML, so it's not surprising that excanvas et. al. have proven to be notoriously slow. It's not clear to me why anyone would even bother, except as a way to bolt IE support on as an afterthought. Like it or not, anything that does that is going to be commercially marginal.
As I mentioned, VML is remarkably close to SVG. So there's an obvious solution here.
The big problem I see with a project like Highcharts (and other Flot alternatives I've tried) is that features like animation and pretty aesthetics are center stage while performance is typically hugely lacking. We've driven Flot to its limit, and by far I can say that the winner of JS charting APIs is going to be the library that can perform well not just on Chrome but on Internet Explorer too.
We've charted things here that take under 1 second to render in Firefox/Chrome/Safari while taking 10-15 minutes with the CPU pegged (yes, you read that correctly) in IE.
We've gotten around it with a bit of work, but it's still a glaring problem for the APIs, and a glaring problem for projects that use HTML5 canvas, can't use excanvas.js with the Silverlight patch, but do need to serve up JS-powered charts to clients still on IE6/IE7.