浏览器在使用highcharts绘制趋势时挂起

时间:2014-02-24 04:57:33

标签: javascript highcharts

早上好,

我正在使用highcharts库绘制趋势。我将以10秒的间隔连续且动态地向高等级添加点数。它工作正常10-15分钟。但之后浏览器会询问用户“你想停止脚本吗?”。浏览器变得无响应。

创建图表的代码是

var seriesData = [];
var cnt = 0;
var ais = DCSSPACE.view.mappings.AI;
var aos = DCSSPACE.view.mappings.AO;
for ( var i = 0; i < ais.length; i++) {
seriesData[cnt] = {
    'name' : ais[i].tag,
    'data' : []
};
cnt++;

}
for ( var i = 0; i < aos.length; i++) {
seriesData[cnt] = {
    'name' : aos[i].tag,
    'data' : []
};
cnt++;
}

/** **************** */

DCSSPACE.view.chart = new Highcharts.Chart({
chart : {
    renderTo : 'trendsDiv',
    defaultSeriesType : 'spline',

// events : {
// load : DCSSPACE.requestData
// }
},
plotOptions : {
    series : {
    events : {
        legendItemClick : function(event) {
        event.preventDefault();
        return false;
        }
    }
    }
},
title : {
    text : 'TRENDS'
},
xAxis : {
    // type : 'linear',
    type : 'datetime',
    tickPixelInterval : 150,
    maxZoom : 20 * 1000,
    title : {
    text : 'Time',
    margin : 30
    }
},
yAxis : {
    minPadding : 0.2,
    maxPadding : 0.2,
    title : {
    text : '%',
    margin : 80
    }
},/*
     * ,{ minPadding: 0.2, maxPadding: 0.2, title: { text: 'AO', margin:
     * 40 } }]
     */

series : seriesData
});

和向图表添加点的代码是

 var ais = json.AI;
var aos = json.AO;
var times = json.TIME;
for ( var i = 0; i < ais.length; i++) {
var time = times[i];

var series = DCSSPACE.view.chart.series[0];
// shift if the series is longer than 20
shift = series.data.length > 100;

var seriesNum = 0;
for ( var key in DCSSPACE.view.mappings.AI) {
    DCSSPACE.view.chart.series[seriesNum].addPoint([ time,
        ais[i][DCSSPACE.view.mappings.AI[key].tag] ], false, shift);
    seriesNum++;
}
for ( var key in DCSSPACE.view.mappings.AO) {
    DCSSPACE.view.chart.series[seriesNum].addPoint([ time,
        aos[i][DCSSPACE.view.mappings.AO[key].tag] ], false, shift);
    seriesNum++;
}
DCSSPACE.pivote = time;

}

DCSSPACE.view.chart.redraw();

请帮我解决这个问题。

0 个答案:

没有答案