【发布时间】:2016-07-26 21:25:33
【问题描述】:
我认为我可能有一个简单的问题。这很好用..
$(document).ready(function() {
// Original data
var data = [{
"name": "Tokyo",
"y": 3.0
}, {
"name": "NewYork",
"y": 2.0
}, {
"name": "Berlin",
"y": 3.5
}, {
"name": "London",
"y": 1.5
}];
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'pie'
},
series: [{
data: data
}]
});
});
我想修改代码以使用 getJSON 加载,并且 JSON 格式正确。 所以我就这么做了……
$(document).ready(function() {
$.getJSON("etstats?rtype=bestpgs_ec&month=2016-06-01&no_requested=10", function(json){
var data = json
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'pie'
},
series: [{
data: data
}]
});
});
});
我在 Firebug 中检查了 JSON,它使用“name”和“y”的格式正确
[{"name": "14704", "y": "0.17"}, {"name": "14706", "y": "0.20"}, {"name": "21304", "y": "0.25"}, {"name"
: "23201", "y": "0.39"}, {"name": "23501", "y": "0.42"}, {"name": "17102", "y": "0.46"}, {"name": "15001"
, "y": "0.48"}, {"name": "23002", "y": "0.50"}, {"name": "13201", "y": "0.50"}, {"name": "17401", "y"
: "0.52"}]
谁知道为什么我的图表不能渲染?
注意:已编辑以添加答案。引用的值是问题所在。通过迭代它们并评估值来删除它们。
$.getJSON("etstats?rtype=bestpgs_ec&month=2016-06-01&no_requested=10", function(json){
data = json
$.each(data, function (i, point) {
point.y = eval(point.y);
});
var chart = new Highcharts.Chart({
【问题讨论】:
-
不确定是否相关,但您的
"y"值在您的第二个版本中有双引号,而在第一个版本中没有。
标签: javascript jquery json highcharts getjson