29

将 Highcharts 2.1.9 升级到 3.0.0 后,我们发现在一个系列中渲染超过 1000 个点似乎是不可能的。

如果您将 1000 个点添加到一个系列中,它会呈现正常。

如果将 1001 个点添加到系列中,则它根本不会渲染。如果您之后查询该系列,则该系列上的“数据”数组为空。

但是,您可以使用 1000 个点渲染多个系列 - 因此每个图表的总点数似乎没有限制。

这是一个说明这一点的 jsFiddle:http: //jsfiddle.net/YWVHx/47/

$(function () {

    var series1Data = [];
    for (var i = 0; i < 1000; i++) {
        series1Data.push({
            x: (new Date()).getTime() + i * 10000,
            y: Math.random() * 100
        });
    }

    var series2Data = [];
        // If you change this back to 1000 the series gets rendered
        for (var i = 0; i < 1001; i++) { 
            series2Data.push({
                x: (new Date()).getTime() + i * 10000,
                y: Math.random() * 100 + 100
            });
    }

    $('#container').highcharts({
        chart: {
            type: 'line'
        },
        title: {
            text: 'Foo'
        },
        xAxis: {
            type: 'datetime'
        },
        yAxis: {
            title: {
            text: null
            }
        },
        tooltip: {
            crosshairs: true,
            shared: true,
            valueSuffix: '°C'
        },
        legend: {
            enabled: true
        },
        series: [{
            name: '1000 Points - I work ;-)',
            data: series1Data
        }, {
            name: '1001 Points - I dont work :-(',
            data: series2Data
        }]
    });
});

这是故意施加的限制还是 v3 的问题?

4

2 回答 2

34

你应该设置更大的涡轮阈值:http: //api.highcharts.com/highcharts#plotOptions.series.turboThreshold

于 2013-04-10T09:30:29.783 回答
20

为了其他用户的方便,这是一个可以复制和粘贴的补充示例:

        plotOptions:{
            series:{
                turboThreshold:5000//set it to a larger threshold, it is by default to 1000
            }
        }

检查http://jsfiddle.net/YWVHx/339/这里的结果

于 2015-04-13T03:58:40.810 回答