你可以直接分配JSON給一個變量,而不需要數組:
var json_object = your_raw_json;
那麼你可以使用JSON對象來填充圖表上的行。 下面是一個使用了「ApparentTempMax」從您提供的JSON的例子:
google.load('visualization', '1', {packages: ['corechart', 'line']});
google.setOnLoadCallback(drawBasic);
function drawBasic() {
var data = new google.visualization.DataTable();
data.addColumn('number', 'Day');
data.addColumn('number', 'ApparentTempMax');
//WHERE THE DATA IS BEING SET: START
var rows = new Array;
var daily_weather_data = json_object.daily.data;
for(var i=0; i<daily_weather_data.length; i++){
var day_data = daily_weather_data[i];
rows.push([i, day_data.apparentTemperatureMax]);
}
/*
At this point rows will look like this:
[
[0, 74.24], [1, 68.1], [2, 77.03], [3, 77.68],
[4, 78.5], [5, 80.36], [6, 87.44], [7, 89.94]
]
*/
data.addRows(rows);
//WHERE THE DATA IS BEING SET: END
var options = {
hAxis: {
title: 'Day'
},
vAxis: {
title: 'ApparentTempMax'
}
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
運作實例:https://jsfiddle.net/6qpf7tek/2/
這可能是這個問題的一個可能重複:http://stackoverflow.com/questions/16896219/how-can-i-convert-json-string-to-google-visualization-datatable – jithinpt
什麼是「JavaScript表」? –
對不起,「陣列」。 – tlewis3348