Как выделить цветом регион на основе почтового индекса с помощью Leaflet?
Я пытаюсь выделить цветом целый регион на моей карте на основе почтового кода. То есть я хочу, чтобы весь регион с почтовым индексом был закрашен в основном цвете. Для этого я использую плагин Leaflet.
Сейчас я отображаю круги на карте (Нажмите на ссылку, чтобы увидеть): Текущая карта
Вот код JS, который я использую для его отображения:
$(document).ready(function(){
/* Initialising the map */
var map = L.map('map').setView([50.84673, 4.35247], 9);
L.tileLayer('https://tile.openstreetmap.be/osmbe/{z}/{x}/{y}.png', {
attribution:
'© <a href="http://openstreetmap.org">OpenStreetMap</a> contributors' +
', Tiles courtesy of <a href="https://geo6.be/">GEO-6</a>',
maxZoom: 18
}).addTo(map);
var popup = L.popup();
function onMapClick(e) {
popup
.setLatLng(e.latlng)
.setContent("You clicked the map at " + e.latlng.toString())
.openOn(map);
}
map.on('click', onMapClick);
// Fetching the postal codes for each representative
$.ajax({
url: dynamicmapurl,
method: "GET",
dataType: 'json',
beforeSend: function(xhr, settings) {
if(!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}
},
success:function(data)
{
data = data.reverse();
for(var i = 0; i < data.length; i++){
//Drawing a circle on the map based on the
//Postal code dictionary array I'm receiving from the backend
L.circle([data[i].lat, data[i].lon], 500, {
color: data[i].fillColor,
fillColor: data[i].fillColor,
fillOpacity: 0.8
}).addTo(map).bindPopup("Vertegenwoordiger: " + data[i].vertegenwoordiger + " <br> "
+ " Postcode: " + data[i].postcode)
}
},
error: function(data){
console.log(data);
alert("Algemene Error");
}
});
})
Есть ли способ выделить цветом весь диапазон почтовых индексов на карте с помощью плагина Leaflet? Если да, то как мне это сделать?
Результат, который я хочу получить: Нажмите на ссылку, чтобы увидеть
* Обратите внимание, что регион должен быть окрашен в зависимости от того, какой представитель & карта не должна быть такой темной.
Спасибо за помощь!