谷歌图表工具和JSON

Google Chart Tools and JSON

本文关键字:JSON 工具 谷歌      更新时间:2023-09-26

在本例https://google-developers.appspot.com/chart/interactive/docs/quick_start中,方法data.addRows()接受一个列表的列表。

我有一个URI (/data/mydata.json)返回这个数据

[["Canada", 66], ["Turkey", 10], ["Hungary", 23], ["Italy", 49]]

使用JQuery的$.parseJSON(),我得到错误SyntaxError: JSON.parse: unexpected character

我如何将数据以它想要的格式放入方法中?

更新

我只运行alert($.parseJSON('/data/mydata.json')),它解析并显示数据很好。似乎data.addRows()是抛出错误的那个。

下面是完整的代码:

google.load('visualization', '1.0', {'packages':['corechart']});
google.setOnLoadCallback(drawChart)
function drawChart(){
var data = new google.visualization.DataTable();
data.addColumn('string', 'Country');
data.addColumn('number', 'Node Count');
data.addRows($.parseJSON('/data/mydata.json'));
var options = {'title':'Tor Nodes by Country',
           'width':800,
           'height':600};
var chart = new google.visualization.PieChart(document.getElementById('nodes'));
chart.draw(data, options);

}

JQuery完美地解析JSON数据。输出是一个数组的数组。

下面是一个JS的例子:

var json_data = "[['"Canada'", 66], ['"Turkey'", 10], ['"Hungary'", 23], ['"Italy'", 49]]";
var parsed_data = $.parseJSON(json_data);
document.write('<table><tr><th>City</th><th>number</th></tr>');
for (var i=0; i < parsed_data.length; i++) {
    document.write('<tr><td>' + parsed_data[i][0] + '</td>');
    document.write('<td>' + parsed_data[i][1] + '</td></tr>');
}
document.write('</table>');

你确定,因为你不告诉你如何检索数据,你确定JQuery没有解析输入作为JSON检索时?

下面是一个JSFiddle链接,显示json_data

的内容