寻找一个可以在散点图上绘制~200,000个点的javascript图表库

moj*_*nes 13 javascript charts jfreechart

我正在构建一个Web应用程序,其界面包含一个大的散点图,以便向用户提供其数据的概述.散点图大约有200,000个点.目前我正在使用JFreeChart Java库服务器端,它可以很好地绘制绘图 - 只需要大约一秒钟来渲染它.

为了使我的应用程序更具交互性,我想切换到使用Javascript绘制图表客户端.这将允许我包括点,工具提示,可点击点等的交互式过滤.我已经尝试使用Google Charts,但这需要一个时间来渲染并使浏览器停滞不前.

有没有人知道可以处理这么大的数据集的Javascript图表库?或者我应该放弃这个想法并坚持使用JFreeChart?我不介意页面本身是否需要一段时间来加载(这是不可避免的,因为要传输大量数据)但我需要图表在合理的时间内更新以响应用户输入.

sol*_*dil 12

我的建议将转到Highcharts和Highcharts Stocks(http://www.highcharts.com).

您可以在那里找到一个带有52k数据点的演示,包括缩放,工具提示和交互:http://www.highcharts.com/stock/demo/data-grouping,图表大约需要90毫秒才能在我的(非常快)机器上构建.

但是,非常大的数据集最有可能造成很大的性能问题,无论是网络传输,内存消耗,显示时间等等.此外,600*400图形上的200k数据点约为1个数据点/像素,或每列400个数据点,这没有任何意义.也许某些分组和/或过滤会很有用.


Ric*_*ung 5

对于那些今天正在研究这个问题的人来说, DC.js是一个强大的图表,用于绘制大型数据集,它建立在D3.js之上.它有几种图表类型,包括散点图,条形图和折线图.它们通过Square的crossfilter库运行,以便在绘图之前映射减少数据.