如何使用MapBox通过ISO代码高亮显示区域
我正在使用MapBox渲染贴图。目前,为了突出显示一个国家,我使用以下代码:如何使用MapBox通过ISO代码高亮显示区域,mapbox,Mapbox,我正在使用MapBox渲染贴图。目前,为了突出显示一个国家,我使用以下代码: function renderMap(accessToken, longitude, latitude, zoom, isoCode, mapId, url, type) { mapboxgl.accessToken = accessToken; var map = new mapboxgl.Map({ container: 'map', style: 'mapbox:
function renderMap(accessToken, longitude, latitude, zoom, isoCode, mapId, url, type) {
mapboxgl.accessToken = accessToken;
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v11',
center: [longitude, latitude],
zoom: zoom
});
map.on('load', function () {
map.addLayer({
id: mapId,
source: {
type: 'vector',
url: 'mapbox://' + url,
},
'source-layer': 'country_boundaries',
type: 'fill',
paint: {
'fill-color': '#d2361e',
'fill-opacity': 0.4,
},
},
'country-label'
);
if (type === "country") {
map.setFilter('country-boundaries', [
"in",
"iso_3166_1",
isoCode
]);
} else {
map.setFilter('country-boundaries', [
"in",
"iso_3166_2",
isoCode
]);
}
});
};
这样做很好,我可以设置中心,也可以传递ISO代码,并且国家居中并突出显示
我想为地区做类似的工作,但我找不到任何这样做的例子。有人知道这是否可能吗