我正在讨论两个问题: 第一个 - 我试图改变这个
series: [{
type: 'column',
color: '#a0a0a0',
name: 'Previous',
data: [A, B, C, D, E]
}, {
type: 'column',
color: 'rgba(250,206,57,1)',
name: 'Current',
data: [AA, BB, CC, DD, EE]
}
]
填充循环以便可以更改项目数,但此代码使每个项目成为不同的系列。
series: []
});
var newSeries = [];
for (var i = 2; i <= (N-1); i++) {
var newData = [];
var seria = {};
seria['name'] = 'Previous';
seria['data'] = [Pre[i]];
seria['color'] = '#2dbdda';
newSeries.push(seria);
var seria2 = {};
seria2['name'] = 'Current';
seria2['data'] = [Cur[i]];
seria2['color'] = '#214881';
newSeries.push(seria2);
}
有什么问题?
第二个 - 如何将动态填充添加到X轴数据标签?
感谢名单
答案 0 :(得分:1)
根据更新的问题详情进行编辑
好的,那么,再看一下你发布的示例数据,你的数据已经在一个数组中,所以我看不到需要循环的东西。
您需要做的就是在图表选项中构建系列,并使用data
和Cur
数组填充Pre
:
series: [{
'name': 'Previous',
'color': '#2dbdda',
'data': Cur
}, {
'name': 'Current',
'color': '#214881',
'data': Pre
}]
Cur[0] = 3
Cur[1] = 5
Cur[2] = 4
与
相同Cur = [3,5,4]
没有循环的简化小提琴:
旧答案仍在,如果我误解了你的实际行动:
当前拥有的循环是在每次迭代时显式生成一个新系列。
如果您有一定数量的系列,则需要在循环数据之前单独创建系列对象。
如果你有一个动态的系列数,你需要一个嵌套循环来构建它们。
假设您只关注两个系列,并希望数据是动态的,您可以先构建系列,然后循环并填充数据,如下所示:
//build the series placeholders, with empty data arrays
var series = [{
'name': 'Previous',
'color': '#2dbdda',
'data': []
}, {
'name': 'Current',
'color': '#214881',
'data': []
}],
Cur = [4, 5, 9, 8, 7], <-- example array; populate from your database
Pre = [8, 6, 8, 1, 2];
//loop through and push the data to your series data arrays
for (var i = 0; i <= (Cur.length - 1); i++) {
series[0].data.push([Pre[i]]);
series[1].data.push([Cur[i]]);
}
示例: