我正在使用滑块绘制一些geoJson国家/地区数据的Google地图,只要移动滑块即可。我写得出每个国家的功能被称为“colorCountry”我如何根据他们的id为geoJSON功能添加不同颜色? (googlemaps)
$("#dateRangeSlider").on("valuesChanged", function(e, data) {
...
for (i = 0; i < CountriesArray.items.length; i++) {
alpha = CountriesArray.items[i].downloads/maximum;
colourCountry(CountriesArray.items[i].country,alpha);
}
...
}
...
colourCountry = function (countryCode, alpha) {
var url = 'data/' + countryCode.toString() + '.geo.json';
var feature = map.data.loadGeoJson(url);
map.data.setStyle(function (feature) {
return/** @type {google.maps.Data.StyleOptions} */
{
fillOpacity: alpha
};
});
}
以上的结果是,所有国家都具有透明度等于最终α有色值通过。 (我想要的是用类似feature.getProperty('opacity')的东西来替换上述造型函数中的alpha有没有可能:
(i)在绘制时为每个包含alpha信息的特性添加属性在样式的功能后使用?这篇文章确实是这样的,虽然他们解析XML到JSON和我已经有以GeoJSON(https://developers.google.com/maps/articles/combining-data)
(二)绘制的loadGeoJson()函数中定义的不透明度每个功能?
或者最后,我应该只使用openLayers/leaflet?我一直在寻找一种方法来根据参数单独着色geoJSON功能一段时间,找到功能。谢谢你的帮助!
你有没有尝试过吗?对于文档和示例,我认为这将是非常简单的。 – geocodezip 2014-09-30 14:04:32
我试过 map.data.feature.setProperty 没有运气。 – 2014-09-30 14:57:15
为什么/你是如何尝试map.data.feature的。的setProperty?你看过文档中的例子吗? [动态改变外观](https://developers.google.com/maps/documentation/javascript/datalayer#change_appearance_dynamically) – geocodezip 2014-09-30 16:09:48