views:

130

answers:

2

Hi,

There've been a number of questions on here in the past about charting packages, but I'm looking for one with a specific set of properties. In particular:

  • Ability to handle many thousands of data points
  • Ability to allow users to pan and zoom
  • Ability to do live update of the charts (i.e. to reflect new data)

Ideally, it will work with PHP (and / or JavaScript) and I'm guessing will produce Flash-based charts. I have a feeling that the right way to handle the requirements is to have a system that can determine which data points it needs to fetch for the required view. So when a user zooms in, the front-end fetches a new set of points from a different range. Only enough points are fetched at any given point (e.g. one data point per pixel).

Does anyone know of a charting package that works in this way?

Thanks,

Ben

+1  A: 
  • Ability to handle many thousands of data points

Consider using a caching mechanism for fast value retrieval, the standard for LAMP is memcached, though I've been playing around with redis for great performance.

Also, you may want to take advantage of pre-rendered charts to save on data retrieval, consider the Google Charts API.

  • Ability to allow users to pan and zoom

Everyone, including SO, if using flot for dynamic JavaScript charts.

  • Ability to do live update of the charts (i.e. to reflect new data)

You may be able to accomplish this by rendering flot graphs on an interval. Definitely consider utilizing some form of caching so that your app doesn't sap performance on your data source.

jakemcgraw
+2  A: 

I have used amCharts in the past and I thought it was a great package. The feature set is huge and its highly configurable.

Cody Caughlan