我想为马来西亚制作彩色地图但不显示颜色。我使用了文件my.js中的名称,这些名称适用于其他Google国家地区的国家/地区。为什么它不起作用?
function drawMap() {
var data = google.visualization.arrayToDataTable([
['Province'],
['MY-SK'],
['MY-K'],
['MY-M'],
['wilayah persekutuan labuan'],
['wilayah persekutuan putrajaya'],
['negeri sembilan']
]);
//var results = {"sarawak": "MY-SK", "melaka": "MY-M", "kedah": "MY-K", "wilayah persekutuan labuan": "MY-L", "wilayah persekutuan putrajaya": "MY-16", "negeri sembilan": "MY-N", "johor": "MY-J", "kelantan": "MY-D", "perlis": "MY-R", "sabah": "MY-SA", "wilayah persekutuan kuala lumpur": "MY-W", "pulau pinang": "MY-P", "terengganu": "MY-T", "pahang": "MY-C", "perak": "MY-A", "selangor": "MY-B"};
var options = {
region: 'MY',
backgroundColor: '#81d4fa',
datalessRegionColor: '#ffc801',
width: 468,
height: 278,
resolution: 'provinces',
};
var container = document.getElementById('mapcontainer');
var chart = new google.visualization.GeoChart(container);
function myClickHandler() {
var selection = chart.getSelection();
var message = '';
for (var i = 0; i < selection.length; i++) {
var item = selection[i];
// if (item.row != null && item.column != null) {
message += '{row:' + item.row + ',column:' + item.column + '}';
//} else
if (item.row != null) {
message += '{row:' + item.row + '}';
//} else if (item.column != null) {
// message += '{column:' + item.column + '}';
}
}
if (message == '') {
message = 'nothing';
}
//alert('You selected ' + message);
}
google.visualization.events.addListener(chart, 'select', myClickHandler);
chart.draw(data, options);
}
google.load('visualization', '1', {
packages: ['geochart'],
callback: drawMap
});
属于马来西亚的地区应该像其他国家一样变绿。他们为什么不呢?
答案 0 :(得分:1)
我也遇到过这种问题,虽然我没有确切解释问题的原因,但您可以尝试使用此解决方法来直接使用马来西亚省的ISO_3166-2表示而不是其名称。
var data = google.visualization.arrayToDataTable([
['Province', 'Name'],
['MY-15', 'wilayah persekutuan labuan'],
['MY-16', 'wilayah persekutuan putrajaya'],
['MY-05', 'Negeri Sembilan']
]);