2 つの配色を使用してジオマップを使用しようとしています。ユーザーがページ上のリンクをクリックすると、js を使用してマップの色を変更し、再描画します。
私なら、変えるね
options['colors'] = [0xbaecc7, 0x3bc75f]; // light to dark green
問題は、関数を呼び出して再描画するたびに、ジオマップがリロードされるように見えることです。私は2つの機能を持っています..下の1つは緑用で、もう1つは青の地図を描くためのものです。drawMap
最初に、呼び出して使用して青い地図を描きますsetOnLoadCallBack
google.setOnLoadCallback(drawMap);
どんな助けやアイデアも高く評価されます!
function drawGoalsMap() {
var options = {};
options['dataMode'] = 'regions';
options['region'] = 'world';
options['colors'] = [0xbaecc7, 0x3bc75f]; // light to dark green
options['width'] = '900px';
options['height'] = '400px';
var data = new google.visualization.DataTable();
data.addRows(6);
data.addColumn('string', 'Country');
data.addColumn('number', 'Messages');
data.setValue(0, 0, 'Germany');
data.setValue(0, 1, 200);
data.setValue(1, 0, 'United States');
data.setValue(1, 1, 300);
data.setValue(2, 0, 'Brazil');
data.setValue(2, 1, 400);
data.setValue(3, 0, 'Canada');
data.setValue(3, 1, 500);
data.setValue(4, 0, 'France');
data.setValue(4, 1, 600);
data.setValue(5, 0, 'RU');
data.setValue(5, 1, 700);
var container = document.getElementById('map_canvas');
var geomap = new google.visualization.GeoMap(container);
geomap.draw(data, options);
google.visualization.events.addListener(geomap, 'regionClick',
function(e) {
var countryCode = e['region'];
DrillDown(countryCode);
}
);
};