Google Visualization API ( https://google-developers.appspot.com/chart/interactive/docs/gallery/geochart )の geochart パッケージを使用して、CSV のデータからマップを作成しようとしています。ワークフローは次のとおりです。
- jQueryを使用してCSVを配列に変換する
- 配列をデータテーブルに変換
- データテーブルからチャートを生成
データを配列として直接エンコードすると、マップを生成できます。ただし、CSV ファイルからこの配列を生成することはできません。
私のコード:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="https://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/0.71/jquery.csv-0.71.min.js"></script>
<script type="text/javascript">
google.load('visualization', '1', {packages: ['geochart']});
google.setOnLoadCallback(drawVisualizations);
function drawVisualizations() {
$.get("map_2003.csv", function(csv_in) {
var map_2003_in = $.csv.toArrays(csv_in, {onParseValue: $.csv.hooks.castToScalar});
var map_2003_data = new google.visualization.arrayToDataTable(map_2003_in);
var map_2003_chart = new google.visualization.GeoChart(document.getElementById('map_2003_chart'));
map_2003_chart.draw(map_2003_data, {'width': '640px','height': '480px'});
});
}
</script>
</head>
<body>
<div id="map_2003_chart" style="width: 640px; height: 480px;"></div>
</body>
</html>
私の CSV ファイルは次のようになります: Country,Production,US,7362,Canada,3003,Mexico,3795,Argentina,900,Brazil,1548
どんな助けでも大歓迎です。