GeoJSON žiniatinklio žemėlapiams: vadovas
GeoJSON – pagrindinis geoduomenų mainų formatas žiniatinklyje. Visos populiarios kartografinės bibliotekos – Leaflet, Mapbox GL JS, OpenLayers, deck.gl – savaime palaiko GeoJSON. Su osm2cdr.ru galite eksportuoti bet kurią OpenStreetMap sritį į GeoJSON per kelias sekundes.
GeoJSON struktūra
GeoJSON failas – tai paprastas JSON su FeatureCollection tipo objektais. Kiekvienas Feature turi geometriją (taškas, linija, daugiakampis) ir savybes (properties) – OpenStreetMap žymas: pavadinimą, objekto tipą, adresą ir kitus atributus.
Kaip prijungti prie Leaflet
Paprasčiausias būdas parodyti GeoJSON žiniatinklio žemėlapyje:
fetch('/data/moscow-buildings.geojson')
.then(r => r.json())
.then(data => L.geoJSON(data, {
style: { color: '#3388ff', weight: 1, fillOpacity: 0.3 }
}).addTo(map));
Stilizavimas pagal savybes
GeoJSON iš osm2cdr.ru išsaugo OSM žymas: highway, building, amenity, natural ir kitas. Tai leidžia stilizuoti objektus pagal tipą:
L.geoJSON(data, {
style: function(feature) {
if (feature.properties.building) return { color: '#e74c3c' };
if (feature.properties.natural === 'water') return { color: '#3498db' };
return { color: '#95a5a6' };
}
});
Optimizavimas dideliems duomenims
GeoJSON puikiai veikia mažoms ir vidutinėms sritims (iki 50 km²). Didelėms teritorijoms:
- GeoJSON-Seq – srautinis formatas, failas įkeliamas eilutė po eilutės.
- PMTiles – cloud-native plytelių formatas su momentiniu milijonų objektų atvaizdavimu.
- Vektorinės plytelės – įkeliamos naršant žemėlapį.
Įrankiai darbui su GeoJSON
- geojson.io – internetinė rengyklė peržiūrai ir redagavimui.
- Mapshaper – geometrijos supaprastinimas ir konvertavimas.
- Turf.js – erdvinė analizė tiesiai naršyklėje.
- QGIS – pilnavertė GIS sudėtingam apdorojimui.