用于海量数据的 Javascript 图表库 [关闭]
Posted
技术标签:
【中文标题】用于海量数据的 Javascript 图表库 [关闭]【英文标题】:Javascript charting library for huge data [closed] 【发布时间】:2011-06-28 12:39:05 【问题描述】:有人知道可以处理大量数据集的 javascript 图表库吗?
“巨大”是指绘制一个包含大约 1,000 条线和总共 25,000 个数据点的折线图。 (每条线的点分布不均匀。很多线的点很少,但有些多达 4,000 个。)这是example data file。
目前我正在使用Highcharts,但它在绘制大型数据集时速度太慢了。
我不想使用 Flash 或 Silverlight。
我希望使用 Javascript,以便我的用户可以在图形周围进行缩放和平移,以及打开/关闭线条等。但如果这对于任何 Javascript 图表库来说都太多了,那么我将拥有将图表制作到服务器端。
【问题讨论】:
谷歌可视化是我脑海中浮现的一种code.google.com/apis/visualization/documentation/gallery.html 你试过Protovis吗? 不到一年,“测试网站”链接就已经失效了。 kjy112 Google Vizualization 处理大量数据的能力如何? 同意@Henning,既然链接已经消失,这个问题就没有多大意义了。 【参考方案1】:在他们的示例中,dygraphs 库以非常快速的方式处理六千个数据点。也许这会适合您的需求?
它基于 Canvas 并带有用于 IE 支持的 excanvas。
【讨论】:
@Nicholas 非常感谢您链接到这个库。我一直在尝试使用谷歌图表,并且在使用大型数据集时它会像疯了一样使浏览器陷入困境。我的客户需要显示数千个点的默认视图,这是一个很好的替代方案,因为它们甚至支持 GVis 表,所以我几乎什么都不做 @CryptDemon 它是由 Google 工程师创建的,因此它与 Google Charts 兼容也就不足为奇了。 感谢您分享这个图书馆的链接,太棒了!【参考方案2】:ZingChart JavaScript charting library 可能值得一试。它专为大数据而构建,并提供了一些出色的功能,可确保快速、稳定的渲染而不会失去交互性。
Here is a demo 在不到一秒的时间内渲染 100k 点。如果您想进行一些比较,还有ZingChart Vs. demo(请注意右上角的警告 - 某些库可能会干扰您的浏览器)。
完全披露,我是 ZingChart 团队的一员。我很乐意回答您可能对图书馆提出的任何问题。
【讨论】:
【参考方案3】:旧线程,但也许有一些用处。 Highcharts 添加了一个“增强”模块来改进数据集点绘图。他们说这可以轻松处理数百万个数据点。
【讨论】:
【参考方案4】:ECharts 可以处理大量数据(我已经用 100k 点 x 3 系列对其进行了测试)。
它是一个开源且免费使用的 (Apache 2.0) 库。 这里是一个大规模数据图表的例子https://ecomfe.github.io/echarts-examples/public/editor.html?c=candlestick-large
如果您想使用 Echarts line
系列类型来处理大量数据,您应该打开“采样”http://echarts.apache.org/option.html#series-line.sampling 以聚合数据点。
另一个有用的选项是showSymbol: false
,它也可以提高性能。
【讨论】:
您知道是否可以在用户滚动图表时延迟加载数据吗?以上是关于用于海量数据的 Javascript 图表库 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章