我想将一个完全填充的数组或keyvalue配对对象添加到向下钻取数据部分,但是当我这样做时,它只显示数组中的第一个值,或者根本不显示任何信息。
是否有一种方法可以填充此数据部分而无需对值进行硬编码?
以下是我尝试使用keyvalue对的代码的简短部分,我遗漏了大部分原始hightchart饼图代码,如果需要,将发布其余代码。
var pieChart = function (userTypes) {
// Create the chart
console.log('pieChart');
var array_keys = new Array();
var array_values = new Array();
for (var key in userTypes) {
array_keys.push(key);
array_values.push(userTypes[key]);
}
....
adminNames ={}
for(i =0; i<array_values.length;i++){
if(array_values[i]== "admin"){
admin =admin +1;
adminNames[array_keys[i]]=i;
}
....
drilldown: {
series: [{
name: "Admin",
id: "Admin",
data: [
adminNames
]
},.....
答案 0 :(得分:1)
以编程方式填充钻取数组应该可以正常工作,但Highcharts期望data属性是一个数组数组see example in documentation:
data: [
['Cats', 4],
['Dogs', 2],
['Cows', 1],
['Sheep', 2],
['Pigs', 1]
]
您的代码将其初始化为一个数组,其中一个元素是一个关联数组 - 如下所示:
data: [
{
'Cats': 4,
'Dogs': 2,
'Cows': 1,
'Sheep': 2,
'Pigs': 1
}
]
填充adminNames的逻辑也有点令人困惑,但很难说不知道它应该做什么。