GeoJSON ვებ-რუკებისთვის: სახელმძღვანელო

2026-03-02
geojsonleafletmapboxვებ-რუკებიjavascript

GeoJSON გეომონაცემების გაცვლის მთავარი ფორმატია ვებში. ყველა პოპულარული კარტოგრაფიული ბიბლიოთეკა — Leaflet, Mapbox GL JS, OpenLayers, deck.gl — მშობლიურად უჭერს მხარს GeoJSON-ს. osm2cdr.com-ით შეგიძლიათ მოახდინოთ OpenStreetMap-ის ნებისმიერი უბნის ექსპორტი GeoJSON-ში წამებში.

GeoJSON-ის სტრუქტურა

GeoJSON ფაილი ჩვეულებრივი JSON-ია FeatureCollection ტიპის ობიექტებით. თითოეული Feature შეიცავს გეომეტრიას (წერტილი, ხაზი, მრავალკუთხედი) და თვისებებს (properties) — OpenStreetMap-ის ტეგებს: სახელი, ობიექტის ტიპი, მისამართი და სხვა ატრიბუტები.

როგორ დავაკავშიროთ Leaflet-თან

ვებ-რუკაზე GeoJSON-ის ჩვენების უმარტივესი გზა:

fetch('/data/moscow-buildings.geojson')
  .then(r => r.json())
  .then(data => L.geoJSON(data, {
    style: { color: '#3388ff', weight: 1, fillOpacity: 0.3 }
  }).addTo(map));

სტილიზაცია თვისებების მიხედვით

osm2cdr.com-დან მიღებული GeoJSON ინახავს OSM-ტეგებს: highway, building, amenity, natural და სხვა. ეს საშუალებას გაძლევთ მოახდინოთ ობიექტების სტილიზაცია ტიპის მიხედვით:

L.geoJSON(data, {
  style: function(feature) {
    if (feature.properties.building) return { color: '#e74c3c' };
    if (feature.properties.natural === 'water') return { color: '#3498db' };
    return { color: '#95a5a6' };
  }
});

ოპტიმიზაცია დიდი მონაცემებისთვის

GeoJSON შესანიშნავად მუშაობს მცირე და საშუალო უბნებისთვის (50 კმ²-მდე). დიდი ტერიტორიებისთვის:

GeoJSON-თან მუშაობის ინსტრუმენტები

← ყველა სახელმძღვანელო