4 ms·
Yes, we use Flot to visualize some pretty beefy data with many data points. Flot has some very nice features and is a reasonably active project. The big proble
by Maciek416 17y ago
Yes, we use Flot to visualize some pretty beefy data with many data points. Flot has some very nice features and is a reasonably active project.
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.
- bd 17y agoRaphaël is pretty fast even on Explorer: http://raphaeljs.com/ http://raphaeljs.com/
- rbanffy 17y agoThanks. MIT trumps proprietary any day.
- henriklied 17y agoYou also have the gRaphaël library, Raphaël specifically for charts: http://g.raphaeljs.com/ http://g.raphaeljs.com/
- deleted 17y ago[deleted]
- benmathes 17y agoThis 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.
- gruseom 17y agoThat'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.
- donalm 17y agoFlot requires excanvas.js to simulate the canvas in IE. Internally excanvas.js uses VML.
- gruseom 17y agoI 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.