jQuery/AJAX を使用してデータを取得するテンプレートがあります。データを取得することは問題ではありませんが、GoogleVis が望んでいる方法でデータを使用できないようです。私にとって問題を引き起こしている行はmapdata.addRows([gapidata]);
. 配列に問題があるようですが、修正方法がわかりません。どんな助けでも大歓迎です!
私が使用しているjQuery/AJAX:
var gapidata = new Array();
$.ajax({
url: "inc/index.gapi.inc.php",
cache: false,
dataType: "text",
success: function(html){
gapidata = html;
}
});
AJAX 呼び出しから取得したデータ:
['Korea, Republic of', 50],['Japan', 38]
データを表示するために使用するコード:
// Geo Map Chart
var mapWidth = Math.round(((screenWidth / 12) * 10) * 0.8);
var mapHeight = Math.round(mapWidth * 0.5);
$('#dashboard-visit-map').width(mapWidth*1.1);
$('#dashboard-visit-map').height(mapHeight*1.1);
var mapdata = new google.visualization.DataTable();
mapdata.addColumn('string','Country');
mapdata.addColumn('number','IPs Listed');
mapdata.addRows([gapidata]);
var geochart = new google.visualization.GeoChart(document.getElementById('dashboard-visit-map'));
geochart.draw(mapdata, {width: mapWidth, height: mapHeight,backgroundColor: { fill:'transparent' }});
現在、マップにはデータが入力されていません。かっこを削除するgapidata
と、JavaScript コンソールに次のエラーが表示されます。
Uncaught Error: Row given with size different than 2 (the number of columns in the table).