Flag系列

时间:2016-06-07 19:25:24

标签: javascript memory highcharts highstock

使用大型数据集(50000+)用于"标记"系列类型我遇到了巨大的内存使用情况,导致暂时浏览器挂起和无响应的网页。

In this jsfiddle有2个评论系列,两个都有10,000个值,但有一个系列类型" line"另一种类型" flags",使用Chrome的任务管理器,您可以看到两者之间的内存使用量差异很大(10 MB对155 MB)(一次取消注释一个系列,它会降低浏览器的速度。)

这里我留下测试代码,但只有2个数据值,jsfiddle有10,000个。

$(function () {
    $.getJSON('https://www.highcharts.com/samples/data/jsonp.php?filename=usdeur.json&callback=?', function (data) {
        $('#container').highcharts('StockChart', {
            series: [
///*            
            {type: 'line',
                name: 'Line on series',
                turboThreshold: 0,
                data:[[1465241389],[1465242389]]
            }
//*/
/*
            {type: 'flags',
                name: 'Flags on series',
                turboThreshold: 0,
                data: [{x:1465241389,title:''},{x:1465242389,title:''}],                
                onSeries: '',
                shape: 'squarepin'
            }
*/          
        ]});
    });
});    

看看highstock src我注意到在initSeries方法中调用了merge函数。该函数复制了系列对象,包括它的所有数据(示例中为10,000个值),我不知道它为什么要这样做。

有没有办法用简单数组指定标志数据?或者在没有页面悬挂的情况下使用超过50,000个标志值的方法?

编辑:

  

以下是使用" line":http://jsfiddle.net/vzf3vr2p/1/的示例   这是使用" flags":http://jsfiddle.net/50zab8tc/15/

类型的示例

0 个答案:

没有答案