我现在正在与Highcharts抗争,试图将数据放入其中。如果我硬编码选项和序列,我可以让它工作-所以它不是我的配置(即脚本、css等)。
我在这里看了下面的问题,因为它是相关的:Ajax JSON in to Highcharts Pie Chart
不幸的是,这并没有帮助。有没有人能看看我做错了什么?
(此代码与前面提到的SO post直接相关)
function renderChart(divId, chartType, chartTitle){
var options = createOption(divId, chartType, chartTitle);
var series = createSeries();
options.series = series;
var chart = new Highcharts.Chart(options);
}
function createOption(divId, chartType, chartTitle){
var options = {
chart: {
renderTo: divId,
defaultSeriesType: 'pie'
},
title: {
text: chartTitle
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: false
},
showInLegend: true
}
},
series: []
};
return options;
}
function createSeries(){
var series = [];
series.push('[');
series.push('{');
series.push('"type" : "pie",');
series.push('"name" : "fruits",');
series.push('"data" : [');
series.push('[');
series.push('"Apple",')
series.push('43.0');
series.push('],');
series.push('[');
series.push('"Pear",')
series.push('57.0');
series.push(']');
series.push(']');
series.push('}');
series.push(']');
return series.join('');
}提前谢谢。
无视。最简单的方法-让服务器编写series对象。请看这篇文章:iterate JSON response with jQuery for Highcharts
发布于 2011-09-15 22:25:13
您正在向Highcharts提供一个字符串:
'[{"type" : "pie","name" : "fruits","data" : [["Apple",43.0],["Pear",57.0]]}]'其中,它需要该系列的配置对象数组,例如:
[{
type : "pie",
name : "fruits",
data : [["Apple",43.0],["Pear",57.0]]
}]发布于 2014-01-20 17:49:45
您可以直接将图表与JSON数据绑定。您只需将json属性名称设置为highchart标准即可。'Y‘表示值,'name’表示标签。
您的JSON应该如下所示:
{姓名:“苹果”,y: 25 },{姓名:“梨”,y: 20 }
https://stackoverflow.com/questions/7431431
复制相似问题