Wednesday, April 06, 2011

You Should Try Dygraphs

Over the last six months I've been working with an open source Javascript library called Dygraphs. Dygraphs, run by Dan Vanderkam, provides an interactive graphing library using the HTML5 canvas.

Four things have made me appreciate Dygraphs:
  • It's got an wide array of configurable options.
  • It has an active community on the mailing list.
  • The documentation continues to improve. The options listing above was a recent improvement that is now my regular go-to reference.
  • The tests. Really I should call them examples. Because I can just often analyze them and get 80% of the way to the solution of the problem I'm working on.
I've recently made a few contributions to the project, including 2-dimensional pan and zoom and displaying graphs in a log scale.

If you need a graphing library I recommend you give Dygraphs a try.

6 comments:

David Plass said...

What does this do that Google Chart Server doesn't? (http://code.google.com/apis/chart/index.html)

I'm just curious.

konberg said...

I don't really know chartserver. But I assume that because the charts are rendered natively rather than from a service you can do lots of nice interactive stuff with it, such as update live data:

http://dygraphs.com/tests/dynamic-update.html

David Plass said...

Cool. I think you can accomplish the same thing with Chart Server API by updating the URL via javascript.

konberg said...

I really don't know anything about chart server. It sounds excellent, though.

RHW said...

We are using dygraphs (and Google Gauges) to monitor energy-efficient homes in New Hampshire.
Data is collected using wireless sensors, a web gateway pushes sensor data periodically to a web server. Data is logged using mySQL. Dygraphs is used to plot temperatures, relative humidity, HVAC runtimes, etc.
For more go to:
http://spinwave.wordpress.com/2011/03/28/spinwave-systems-enables-energy-efficiency-case-studies/

Anders said...

Dygraphs handles large amount of data much better than Google Charts.