Highcharts piechart未从JSON对象绘制切片
对于一个客户,我的公司正在努力从AJAX-JSON调用中获取一些数据到Highcharts中。Highcharts piechart未从JSON对象绘制切片,json,highcharts,Json,Highcharts,对于一个客户,我的公司正在努力从AJAX-JSON调用中获取一些数据到Highcharts中。这些数据是一个客户在他/她的帐户上有多少个活动设备。 我们使用的函数是: 获取JSON文件 function getChartJSON(url){ return $.ajax({ type: "GET", url: url, async: false }).responseText; } 创建图表 function createPieC
这些数据是一个客户在他/她的帐户上有多少个活动设备。 我们使用的函数是:
获取JSON文件
function getChartJSON(url){
return $.ajax({
type: "GET",
url: url,
async: false
}).responseText;
}
创建图表
function createPieChart(data, title){
var json = jQuery.parseJSON(data);
var options = {
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false,
renderTo: 'pie-container',
type: 'pie'
},
title:{
text: title
},
plotOptions:{
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: false
},
showInLegend: true
},
},
series:[{data:json}]
};
$.each(data, function (i, point) {
point.y = parseInt(point.data, 10);
});
new Highcharts.Chart(options);
}
一切似乎都进行得很顺利,对象已经生成,索引(Index?)显示的是切片类型(1、2、3、4、4+设备处于活动状态),而不是切片本身
作为字符串返回的JSON是:
[
{"name":"Single device registered","data":13},
{"name":"Double device registered","data":0},
{"name":"Triple device registered","data":2},
{"name":"Quadruple device registered","data":0},
{"name":"Quadruple-plus device registered","data":3}
]
我遗漏了什么不允许绘制切片?我希望这是足够的信息,有人可以帮助我们解决这个问题,或者至少复制一下手头的问题。多么讽刺的是,我一在这里发布问题,就找到了答案。错误在于:
$.each(data, function (i, point) {
point.y = parseInt(point.data, 10);
});
第一个参数是'data',但它应该是'json'。现在可以了。多么讽刺的是,我一在这里发布问题,就找到了答案。错误在于:
$.each(data, function (i, point) {
point.y = parseInt(point.data, 10);
});
第一个参数是'data',但它应该是'json'。现在它可以工作了。那么createPieChart()函数中的变量数据就是json字符串?@morganfree就是这样。不过,函数中的第一条规则将其转换为JSON数组。否则,我们将得到一个包含四页系列的图表。因此createPieChart()函数中的变量数据是json字符串?@morganfree。不过,函数中的第一条规则将其转换为JSON数组。否则我们会得到一张有四页系列的图表。