Heatmap este folosit peste tot - pentru a vizualiza zonele cele mai vizitate ale unei pagini web, a habitatelor animalelor, a zonelor de activitate seismica, densitatea precipitatiilor si multe altele. În acest articol vom analiza hărțile termice ale densității distribuției orașelor din întreaga lume.
Obțineți o listă de orașe este destul de simplă - de exemplu, de pe Wikipedia. Desigur, în forma în care se află pe Wikipedia (în format HTML), acestea sunt dificil de utilizat. Din fericire, există oameni care au pregătit toate informațiile într-o formă convenabilă pentru cartografie - în format GeoJSON. Acesta este un JSON regulat, care respectă anumite reguli (structura). Luați în considerare structura GeoJSON bazată pe două elemente din colecție:Tipul FeatureCollection indică faptul că avem o colecție de geometrii în matricea de caracteristici. Fiecare element din această matrice este un obiect separat care conține geometria (în cazul nostru este un punct) și proprietățile (de exemplu, orașul - numele orașului). Pentru a conecta formatul GeoJSON la OpenLayers, există un format gata pentru sursa de date - ol.format.GeoJSON.
În acest fel, vom crea o sursă de date GeoJSON vector din fișierul cities.json. În general, acesta este tot ceea ce este necesar pentru a crea o hartă a căldurii. Acum, creați layerul ol.layer.Heatmap și adăugați-l pe hartă:
Pentru a adăuga o mică animație la hartă, să adăugăm posibilitatea de a configura tipul de hartă a căldurii cu ajutorul a doi parametri:
- estompare - estompare, implicit este 15
- raza - raza de puncte, implicit 8
... și căutați rezultatul:
Harta căldurii (sau Heatmap)