无法为高级图表加载json文件

时间:2013-06-27 22:46:35

标签: json highcharts

我正在尝试使用highcharts向我的网站添加图表。但是,我是json的新手,我在加载文件时遇到问题。

以下是代码:http://jsfiddle.net/czNn2/9/

'graph-data-array2.json'包含:

[{
name: 'Asia',
data: [502, 635, 809, 947, 1402, 3634, 5268]
}, {
name: 'Africa',
data: [106, 107, 111, 133, 221, 767, 1766]
}, {
name: 'Europe',
data: [163, 203, 276, 408, 547, 729, 628]
}, {
name: 'America',
data: [18, 31, 54, 156, 339, 818, 1201]
}, {
name: 'Oceania',
data: [2, 2, 2, 6, 13, 30, 46]
}]

当我在我的网站上运行它时,控制台上没有错误,图表应该是空白区域。我按照前一个问题的第二个答案的建议:Creating 100% stacked area graph for a website

我还尝试将json文件格式化为:

[
["Price", "Us", "You"],
[0,0.5,0.5],
[1,0.5,0.5],
[2,0.5,0.5]
]

但它也没有用。在这种情况下,我在控制台“Uncaught Highcharts error#13”中收到错误

2 个答案:

答案 0 :(得分:1)

为了确保(因为我的代码中没有看到它),请将图表添加到<div id="container-chart" />

您可以通过向图表选项添加属性来执行此操作:

chart: {
        renderTo: container-chart,
        height: 400
    },

消息来源:http://api.highcharts.com/highcharts#chart.renderTo

或者使用jQuery:

$('#container').highcharts({

编辑:原来你不能在你渲染的div的id中使用hypen。你的json似乎很好。这是一个更新的工作小提琴:http://jsfiddle.net/czNn2/5

答案 1 :(得分:0)

问题在于跨域问题,因为您尝试将json加载到其他域。解决方案可以是使用JSONP。