我正在尝试使用 Google Visualization API 的 geochart 包(https://google-developers.appspot.com/chart/interactive/docs/gallery/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
任何帮助将非常感激。