10

在此代码 javascrip 给出错误

$.each(JSON, function(i, array) {                        
    chart.series[i].name = array.teamName;
    chart.series[i].setData(array.teamPower, true);
});

我必须定义chart.series[i],因为它说“无法设置未定义的属性'名称'”,但我找不到这样做的方法。

因为它的功能与 requestData 一起运行,所以它是在图表确定选项之后出现的

function showGraph() {  
    chart = new Highcharts.Chart(option);       
}

chart: {
    renderTo: 'graphicShow',
    type: 'spline',
    events: {
        load: requestData
    }
}

...在选项中...

title: {
    text: 'Power %'
},
series: []

...

4

2 回答 2

32

您需要查看 API 的“方法和属性”部分。请参阅http://api.highcharts.com/highcharts#Chart(文档页面上也有一个 jsFiddle)。

var chart = new Highcharts.Chart(options);
chart.addSeries({                        
    name: array.teamName,
    data: array.teamPowher
});

如果要添加多个系列,则应将redraw标志设置为 false,然后手动调用 redraw,因为这样会快得多。

var chart = new Highcharts.Chart(options);
chart.addSeries({                        
    name: array.teamName,
    data: array.teamPower
}, false);
chart.addSeries({                        
    name: array.teamName,
    data: array.teamPower
}, false);
chart.redraw();
于 2013-01-05T10:58:31.670 回答
0

您也可以指定为addSeries布尔值的第二个选项,指示它是否重绘

于 2014-08-20T20:31:29.560 回答