Daha çox

Leaflet.js istifadə edərək xoroplet xəritəsində GeoJSON faylının xüsusiyyətləri göstərilir?

Leaflet.js istifadə edərək xoroplet xəritəsində GeoJSON faylının xüsusiyyətləri göstərilir?


Xaricdən yüklənmiş bir GeoJSON faylında saxlanılan bəzi mülk dəyərləri ilə rənglənmiş poçt kodlarının bir xoroplet xəritəsini yaratmaq üçün Leaflet.js kitabxanasından istifadə edirəm. Mən burada bir təlimatı izləyirəm, ancaq bir problemlə üzləşdim, çünki dərslik koddakı bir dəyişənə təyin etməklə məlumatlara necə daxil olacağınızı göstərir. Açıqca bir dəyişən təyin etmədən davam etmək istərdim (yəni məlumatları yükləmək üçün hazırda mövcud olan AJAX funksiyasından istifadə edərək).

Xam məlumatları (burada baxıla bilər, brauzerinizdə "Mənbəyə Bax" bölməsində mövcud olan mənbə kodu) xəritədə göstərə bildim, amma göstərmək istədiyim mülkləri göstərməkdə uğursuz oldum. Məlumatı yükləyən funksiyaya bəzi sətirlər əlavə etməli olduğumdan şübhələnirəm, amma bunu necə edəcəyimi anlaya bilmirəm.


Kodunuzu yoxladım və ajax müvəffəqiyyətli geri çağırma funksiyanızda etdiyiniz hər şeyin stil funksiyasına zəng etmədən yaratdığınız GeoJson Layerinə xüsusiyyətlər əlavə etməsi görünür.

Kodunuzu 116 - 124 xətti arasında aşağıdakı kimi yeniləməyə çalışın:

$ .ajax ({dataType: 'json', url: 'atl_metro.geojson', uğur: funksiya (data) {$ (data.features). hər (funksiya (açar, məlumat) {var zips = L.geoJson (data , {onEachFeature: onEachFeature, style: style}). addTo (map);});}}). error (function () {});

Ayrıca, PCT sahəsindəki ədədlər 1 -dən kiçik olduğundan getColor funksiyanızı yeniləməli və fasilə dəyərlərinizi dəyişdirməlisiniz:

getColor (d) funksiyası {d> 1 qaytar? '#800026': d> 0.8? '#BD0026': d> 0.6? '#E31A1C': d> 0.2? '#FC4E2A': '#FED976'; }

Bu dəyişikliklər, axtardığınız xoroplet xəritəsini sizə qaytara bilməlidir.

Kodunuzda bu yeniləmələri etdikdən sonra işimi başa vurdum, burada aldığım bir ekran görüntüsü var: