

Highcharts: JavaScript Charts that don't suck - nym
http://www.highcharts.com/

======
leonh
You should really take a look at Ajax.org, they show some of the smoothest
interactive 3D javascript plots i have ever seen. I have just submitted it in
the new section.

[http://www.ajax.org/public/presentation/tae/presentation2.ht...](http://www.ajax.org/public/presentation/tae/presentation2.html)

------
grayrest
I strongly recommend Protovis:

<http://vis.stanford.edu/protovis/ex/>

If graphael gets into shape it might be decent as well.

~~~
gruseom
A cursory look suggests that Protovis doesn't work in IE. Is that correct?

~~~
cubtastic71
Its IE8 that has the issues it seems - switch to compatiblity mode and it
eventually renders.

~~~
oconnor0
I'm just getting "[object Error]" in IE7 with nothing beyond that - no
rendering.

------
cyen
I've explore a bunch of JS libraries in the past - here are some thoughts:

Flot and Flotr are definitely past favorites, and its usage has felt the most
natural

PlotKit (<http://www.liquidx.net/plotkit/>) - MochiKit-based, visually nice
but not as well documented or, apparently, nearly as extensive as some of the
other options

RGraph - an HTML5 canvas library, but pretty basic and definitely easy the
least visually appealing

Highcharts definitely looks like it has the nicest animations of any of the
previous ones, and also definitely has the best documentation / demo gallery.
Thumbs up - definitely coming this way the next time I need a nice graphing
library!

~~~
iamwil
plotkit is kinda nice, but you can't plot multiple lines on the same graph
well. You can, but by default, it distinguishes between different lines by
coloring the area underneath it. And when you do, it's all opaque. If you try
to color the lines themselves, it turns ugly.

------
albertni
Maybe this is asking too much, but I'm seeing a ton of different
recommendations in the comments - anyone have experience with many (or at
least more than one) of these options and wouldn't mind going into some of the
differences that stood out to them?

I've Googled in the past but haven't found too many great reviews comparing
some of these choices side-by-side - most seem to regurgitate the feature sets
as opposed to going into the level of detail that would be most helpful for a
developer.

------
revorad
Has anyone used the paid versions of Highcharts or any others mentioned in
this thread? What do you think of the Highcharts price points - $80 for single
commercial site, $360 for multiple sites?

I'm working on a graphing app too and trying to decide my pricing.

~~~
smiler
It's very cheap but then you get what you pay for.

The best and fully featured graphing capabilities are from Dundas imo
(www.dundas.com). They charge about $3000 / developer licence and then $3000 /
server that you run it on.

If you priced it somewhere between the two and it had a good feature set I
might bite. It would have to support printing though (and generating a PDF
would be a big plus)

~~~
revorad
Thanks for the info, smiler. I can tell you PDF will definitely be there, so
printing will follow. It would be helpful if you could share more about your
use cases. Dundas looks mainly aimed at .Net development; is that what you
need it for?

Email me at hrishimittal@gmail.com and I'll put you on our early adopters
discount list.

~~~
smiler
Use cases are pretty simple - building reports for MIS, corporate systems
etc... all of them use Windows servers so asp.net is the standard for
development hence Dundas

~~~
revorad
OK. Well, I won't promise too much but would be happy to help you try out our
initial offering. Feel free to email me or look out for my Ask HN review post
in the next few weeks. Cheers!

------
kylemathews
Anyone have experience with Flot?

~~~
Maciek416
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
Raphaël is pretty fast even on Explorer:

<http://raphaeljs.com/>

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

------
freetard
I prefer <http://www.jqplot.com/> it's free and open source.

------
nym
I'm a big fan of charts, and I'm glad to see someone made a good non-flash
interactive chart solution.

~~~
paddy_m
2 years ago I built chartwidget . <http://demo.chartidget.com>

I haven't quite kept up with javascript charting recently. I was aiming to
build a google finance/yahoo finance competitor. The thing that always
surprised me about google finance/yahoo finance charts was that they didn't
take advantage of data already in the browser. When their flash charts would
try to plot a moving average, they would make another request back to the
server for more data, Why? The browser already has enough data to derive the
moving average.

~~~
nym
I think you meant: <http://demo.chartwidget.com/>

~~~
paddy_m
thanks, I'm a dummy

------
chasingsparks
The splines are nice: [http://www.highcharts.com/demo/?example=spline-
symbols&t...](http://www.highcharts.com/demo/?example=spline-
symbols&theme=default)

------
gruseom
I'll have to look more into this library. I'm glad to see it uses SVG and VML
(edit: oops - plus Canvas). That seems like the right fit for this problem,
since SVG and VML have pretty close models and that way you can have native
vector graphics in all browsers.

Edit 2: I have a question. Are the charts on the Demo page drawing so slowly
because of someone's clever idea of an animation? Or does the library actually
draw that slowly?

------
rmanocha
I've been using Google's Visualization API's for my latest work and I've been
really happy with it. The API is in JS but I believe there are hooks for
Python and other languages too.

<http://code.google.com/apis/visualization/>

------
ig1
The problem with all these graphing libraries is that it's non-trivial to post
the graphs elsewhere. If you have a data driven website then your users are
going to want to share your graphs on facebook, twitter, forums. If you don't
make it easy you're giving away a huge amount of free traffic.

------
adriand
Surprised no one has mentioned Emprise yet. <http://ejschart.com/> Their
website is not the nicest but their charts are very good, also pure
Javascript, and their pricing is reasonable. We've used the library with
success in a couple of projects.

------
shykes
SIMILE's Timeplot (<http://www.simile-widgets.org/timeplot/>) is great but
more specialized. Great for browsing huge datasets.

------
euroclydon
I'm looking for multiple, as in more than two, independent y-axis.

~~~
sjs382
Flot is capable of this: <http://people.iola.dk/olau/flot/examples/dual-
axis.html>

~~~
euroclydon
Thank example show only two, but the text seems to say you can do more.

------
xtho
The charts in the demo section look uglier than Excel charts.

~~~
bravura
I think the charts in the demo section look good, save for the unfortunate
choices of bland yet mismatched colors
([http://www.highcharts.com/demo/?example=area-stacked-
percent...](http://www.highcharts.com/demo/?example=area-stacked-
percent&theme=default)).

I would prefer bland but matched colors.

------
smiler
Print a graph and you get a blank space. Useless

~~~
Huppie
You can make sure an image appears in place of the chart with a css-file for
printing-purposes only. (Or do it the other way around. By default show an
image and use JS to replace that image with a chart when possible.)

------
akronim
Nice, but pretty slow to render for me (on FF3.5). Actually it's more that it
pauses at about one quarter rendered and looks broken for a second before it
finally renders.

~~~
watmough
It's pretty darn slick on safari 4.0.4 on an iMac.

~~~
TeHCrAzY
It doesnt display on IE8. That pretty much makes it useless as far as I'm
concerned.

------
tom_b
Bullet graphs and sparklines as default chart options please? After Tufte and
Few, I basically look for these first when evaluating any chart library.

~~~
nym
Like this?

<http://omnipotent.net/jquery.sparkline/>

------
rjurney
Anyone got a good JS map chart?

~~~
sjs382
<http://code.google.com/apis/chart/types.html#maps>

~~~
rjurney
Yeah, other than google maps :)

Specifically: I want a JS map library that can read SVG maps and render in a
canvas. I think I'm gonna have to build it myself.

------
hadley
Why does doesn't suck = as good as excel?

------
va_coder
I recommend Fusion charts free (and opensource) (it's flash though)

