使用JQPlot绘制大型数据集

亚伦

我有一个应用程序,需要绘制至少5k个数据点,并且大小几乎是无限的。

情节去了:

X轴-> DateTime

Y轴->温度

这是我目前的情节

    var plot1 = $.jqplot('chartdiv', dataArray, {
        title: 'Default Date Axis',
        axes: { xaxis: { renderer: $.jqplot.DateAxisRenderer } },
        series: [{ lineWidth: 4, markerOptions: { style: 'square' } }],
        numberTicks: 10   
    });

数据数组至少包含['Date','Temperature']格式的5k点。

在此处输入图片说明

问题是它效率极低,并导致浏览器冻结。我不需要它实际上在每个数据点上放置一个标签,也许是几个。谁能给我有关如何优化它的提示?

乔纳森

通过更改标记类型和消除阴影,可以获得更好的性能。我一直在情节中使用这些选项,并取得了不错的成绩:

    seriesDefaults: {
        lineWidth: 1, shadow: false, 
        rendererOptions: { smooth: false },
        markerOptions: { show: true, shadow: false, size: 2 } 
    }

这是一个向jqplot添加50k点的示例:http : //jsfiddle.net/xf8d36kc/

我们有一个项目,我们一直在相当快地绘制20-30k点。一旦我们开始达到约100k点,它仍然可以快速显示,但是缩放和与图进行交互的延迟时间为1-3秒,但仍然不会冻结浏览器。从jqplot提取实际数据时,从数据库中导入数据会遇到更多的延迟。

我对绘制大于100k的集并没有多大兴趣,但是在那之后,您可能要开始将数据服务器端分组以限制点数,然后在放大时对其进行扩展以获取更多详细信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用 Graphics2d.setPaint() 在 Java 中快速绘制大型数据集

来自分类Dev

d3-逐步绘制大型数据集

来自分类Dev

在大型数据集上使用Leaps或glmnet

来自分类Dev

使用AngularJS加载大型数据集

来自分类Dev

使用Python创建大型数据集

来自分类Dev

使用Pandas合并大型数据集

来自分类Dev

使用大型数据集加快Postgresql查询

来自分类Dev

使用dask加载大型压缩数据集

来自分类Dev

如何使用** for **循环清理大型数据集

来自分类Dev

使用GraphDB卡住加载大型数据集

来自分类Dev

使用AngularJS加载大型数据集

来自分类Dev

使用大型数据集优化循环Python

来自分类Dev

使用ActiveJDBC加载大型数据集

来自分类Dev

使用Couchbase处理大型数据集

来自分类Dev

使用Pandas合并大型数据集

来自分类Dev

使用循环绘制具有自定义线格式的大型数据集的强大解决方案

来自分类Dev

MySQL大型数据集

来自分类Dev

更新大型数据集

来自分类Dev

合并大型数据集

来自分类Dev

管理大型数据集

来自分类Dev

使用数据驱动的测试处理大型数据集

来自分类Dev

规范化/绘制文本数据,并测试大型数据集的有效性

来自分类Dev

使用相同的数据集绘制各种符号

来自分类Dev

如何使用Shiny绘制上传的数据集?

来自分类Dev

使用colorcode绘制Fisher的Iris数据集

来自分类Dev

使用Jquery和JqPlot从JSON文件绘制带有数据的图形

来自分类Dev

使用JSON-P数据的Jqplot dataRenderer不绘制图形

来自分类Dev

使用Node处理内存中的大型JSON数据集

来自分类Dev

使用pyspark / spark采样大型分布式数据集