Highcharts:将JSON循环到系列数据中

时间:2016-06-07 23:06:32

标签: javascript loops highcharts

我正在尝试将JSON字符串循环到我的系列数据中。但是,我似乎没有得到数据。我做错了什么?

for (var i = 0; i < jsonStrng.lowUsage.length; i++) {
    options.series[0].data = jsonStrng.healthy[i];
    chart = new Highcharts.Chart(options);
};

for (var j = 0; j < jsonStrng.healthy.length; j++) {
    options.series[1].data = jsonStrng.lowUsage[j];
    chart = new Highcharts.Chart(options);
};

for (var k = 0; k < jsonStrng.terrible.length; k++) {
    options.series[2].data = jsonStrng.terrible[k];
    chart = new Highcharts.Chart(options);
};

for (var ii = 0; ii < jsonStrng.buggy.length; ii++) {
    options.series[3].data = jsonStrng.buggy[ii];
    chart = new Highcharts.Chart(options);
};

以下是JSFiddle

1 个答案:

答案 0 :(得分:1)

请执行以下代码:

创建一个数组并在循环到json数组时用数据填充它。最后将series.data赋给该数组

var healthyData = [];
for (var i = 0; i < jsonStrng.lowUsage.length; i++) {
 healthyData.push(jsonStrng.healthy[i]); 
}
options.series[0].data = healthyData; 

对所有3系列数据执行此操作,并且不会调用图表函数,直到所有系列都填充数据。最后一次系列调用后跟函数

 chart = new Highcharts.Chart(options);

如果您分享您的json数据,我会更新你的小提琴,使其运作。