我正在尝试使用 Highcharts 制作图表,但无法弄清楚为什么我的数据格式不正确。
当我使用以下数组作为数据时,我的图表完成了他的工作。
fake = [['Joe', 0.1576]];
但是当我试图通过推动这样的元素来制作一个时,它不会用它来制作图表。
name = 'Joe';
percentage = 0.1576;
element = [];
element.push(name, percentage);
graph.push(element);
当我通过让它们进入控制台来比较它们时,它们看起来完全一样。但是导致问题的它们之间的区别在哪里?
编辑:
感谢您的帮助,我找到了应该出错的地方,可能是 $.getJSON 和 var 'graph' 设置不正确?
graph = [];
$.getJSON("graph.php",function(data){
/* Loop through array */
for (var i = 0; i < data.length; i++) {
graph.push([data[i][1], Number(data[i][3])]);
}
});
$(function () {
$('#container').highcharts({
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false
},
title: {
text: 'Individuele productprijzen uiteengezet tegen de totaalprijs'
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true,
color: '#000000',
connectorColor: '#000000',
format: '<b>{point.name}</b>: {point.percentage:.2f} %'
}
}
},
series: [{
type: 'pie',
name: 'Browser share',
data: graph
}]
});
});
它获取的数据是使用 PHP 中的 json_encode 生成的 JSON 格式。