GeoJSON voor webkaarten: een handleiding
GeoJSON is het belangrijkste formaat voor de uitwisseling van geodata op het web. Alle populaire kaartbibliotheken — Leaflet, Mapbox GL JS, OpenLayers, deck.gl — ondersteunen GeoJSON van nature. Met osm2cdr.ru kunt u elk OpenStreetMap-gebied binnen enkele seconden naar GeoJSON exporteren.
Structuur van GeoJSON
Een GeoJSON-bestand is gewone JSON met objecten van het type FeatureCollection. Elke Feature bevat een geometrie (punt, lijn, polygoon) en eigenschappen (properties) — de OpenStreetMap-tags: naam, objecttype, adres en andere kenmerken.
Koppelen aan Leaflet
De eenvoudigste manier om GeoJSON op een webkaart te tonen:
fetch('/data/moscow-buildings.geojson')
.then(r => r.json())
.then(data => L.geoJSON(data, {
style: { color: '#3388ff', weight: 1, fillOpacity: 0.3 }
}).addTo(map));
Stilering op basis van eigenschappen
GeoJSON van osm2cdr.ru behoudt de OSM-tags: highway, building, amenity, natural en andere. Daardoor kunt u objecten op type stileren:
L.geoJSON(data, {
style: function(feature) {
if (feature.properties.building) return { color: '#e74c3c' };
if (feature.properties.natural === 'water') return { color: '#3498db' };
return { color: '#95a5a6' };
}
});
Optimalisatie voor grote datasets
GeoJSON werkt uitstekend voor kleine en middelgrote gebieden (tot 50 km²). Voor grote gebieden:
- GeoJSON-Seq — een streamingformaat, het bestand wordt regel voor regel geladen.
- PMTiles — een cloud-native tegelformaat met directe weergave van miljoenen objecten.
- Vectortegels — worden geladen naarmate u over de kaart navigeert.
Tools voor het werken met GeoJSON
- geojson.io — een online-editor om te bekijken en te bewerken.
- Mapshaper — vereenvoudiging van de geometrie en conversie.
- Turf.js — ruimtelijke analyse rechtstreeks in de browser.
- QGIS — een volwaardige GIS voor complexe verwerking.