Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Anyone have experience with Flot?


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.


Raphaël is pretty fast even on Explorer:

http://raphaeljs.com/


You also have the gRaphaël library, Raphaël specifically for charts: http://g.raphaeljs.com/


Thanks. MIT trumps proprietary any day.


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.


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.


Flot requires excanvas.js to simulate the canvas in IE. Internally excanvas.js uses VML.


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.


I was looking through graphing libraries over the past weekend and settled on flot. It is really nice and fast, and works well.

You can see an example here, which took about an hour to build:

http://kong.ericholscher.com/tests/test-frontpage/personal-s...


We use it for graphing work queue size in CloudCrowd. Here's a screenshot of it in action:

http://wiki.github.com/documentcloud/cloud-crowd/getting-sta...


Flot is pretty good, but only does time series data, as I recall.


Yeah, I use it for plotting follower data for CustomerFind. The chart on the homepage (http://www.customerfind.com) is a screenshot of part of a user's controlpanel, and was rendered using flot. It was very easy to get flot set up, it plays nicely with the rest of my js, including jQuery. Flot is fast.

P.S. CustomerFind v2 is no longer focusing on AutoFollow, though the copy on the homepage reflects otherwise [http://customerfind.posterous.com/do-you-sell-a-product-or-s...]




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: