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).
理想情况下,它将与PHP(和/或JavaScript)一起使用,我猜测将生成基于Flash的图表。我觉得处理这些要求的正确方法是拥有一个系统,可以确定需要为所需视图提取哪些数据点。因此,当用户放大时,前端从不同范围获取一组新点。在任何给定点(例如,每个像素一个数据点)仅提取足够的点。
Does anyone know of a charting package that works in this way?
有谁知道以这种方式工作的图表包?
2 个解决方案
#1
2
I have used amCharts in the past and I thought it was a great package. The feature set is huge and its highly configurable.
我过去曾经使用过amCharts,我认为这是一个很棒的包。该功能集非常庞大且具有高度可配置性。
#2
1
- 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.
考虑使用缓存机制进行快速值检索,LAMP的标准是memcached,尽管我一直在玩redis以获得出色的性能。
Also, you may want to take advantage of pre-rendered charts to save on data retrieval, consider the Google Charts API.
此外,您可能希望利用预渲染图表来节省数据检索,请考虑使用Google Charts API。
- Ability to allow users to pan and zoom
能够允许用户平移和缩放
Everyone, including SO, if using flot for dynamic JavaScript charts.
每个人,包括SO,如果使用flot动态JavaScript图表。
- 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.
您可以通过在间隔上呈现flot图来实现此目的。绝对考虑使用某种形式的缓存,以便您的应用程序不会削弱数据源的性能。
#1
2
I have used amCharts in the past and I thought it was a great package. The feature set is huge and its highly configurable.
我过去曾经使用过amCharts,我认为这是一个很棒的包。该功能集非常庞大且具有高度可配置性。
#2
1
- 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.
考虑使用缓存机制进行快速值检索,LAMP的标准是memcached,尽管我一直在玩redis以获得出色的性能。
Also, you may want to take advantage of pre-rendered charts to save on data retrieval, consider the Google Charts API.
此外,您可能希望利用预渲染图表来节省数据检索,请考虑使用Google Charts API。
- Ability to allow users to pan and zoom
能够允许用户平移和缩放
Everyone, including SO, if using flot for dynamic JavaScript charts.
每个人,包括SO,如果使用flot动态JavaScript图表。
- 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.
您可以通过在间隔上呈现flot图来实现此目的。绝对考虑使用某种形式的缓存,以便您的应用程序不会削弱数据源的性能。