GeoJSON'u Shapefile'a dönüştürme

Bu dönüştürücü, bir GeoJSON dosyasını ArcGIS Pro, QGIS veya AutoCAD Map 3D için .prj ve .cpg dosyalarıyla birlikte bir shapefile setine çevirir; isterseniz koordinatları UTM dilimi gibi bir sisteme dönüştürür. Dönüştürme tarayıcınızda çalışır ve dosya sunucuya gönderilmez. Karışık noktalar, çizgiler ve poligonlar ayrı shapefile'lar olur, öznitelik adları 10 karaktere kısaltılır, GeometryCollection veya boş (null) geometriler dışarıda kalır.

Bir dosya doğru dönüştürülmedi mi? Tercihen küçük bir örnek dosyayla birlikte [email protected] adresine e-posta gönderin, sorun düzeltilecektir.

Temel bilgiler

GeoJSON → Shapefile: neden dönüştürmelisiniz

GeoJSON web haritalarından, API'lerden, geojson.io'dan ve JavaScript kodundan çıkar, ancak masaüstü CBS iş akışları, kamu kurumları ve birçok müşteri hâlâ Esri shapefile ister. Bu dönüştürücü, ArcGIS Pro, QGIS veya AutoCAD Map 3D'ye hemen ekleyebileceğiniz bir shapefile seti yazar. Biçimin genellikle sorun çıkaran yanlarını halleder: dosya başına tek geometri türü, en fazla 10 karakterlik alan adları, koordinat sistemini içeren .prj dosyası ve öznitelik tablosunun metin kodlaması. Dönüştürürken koordinat dönüşümü de yapabilirsiniz, ör. bir UTM dilimine veya TUREF TM dilimine; böylece shapefile metre cinsinden ölçüme hazır olur. Her şey tarayıcınızda GDAL ile çalışır.

GeoJSON dosyası Shapefile biçimine nasıl dönüştürülür

  1. .geojson veya .json dosyanızı kutuya bırakın veya seçmek için tıklayın.
  2. İsterseniz bir çıktı koordinat sistemi girin, ör. UTM 36N için EPSG:32636.
  3. “Shapefile biçimine dönüştür” düğmesine tıklayın ve shapefile parçalarını içeren .zip'i indirin.

Dönüştürme sırasında neler değişir

Uzun öznitelik adları kısaltılır

GeoJSON öznitelik adları istediğiniz kadar uzun olabilir, ancak shapefile'ın .dbf tablosu yalnızca 10 karaktere izin verir. GDAL daha uzun adları keser ve benzersiz tutar; böylece description_long descriptio, population_2020 population, population_2021 ise populati_1 olur. Sütun adları dosyayı alacak kişiler için önemliyse öznitelikleri dönüştürmeden önce yeniden adlandırın.

Karışık geometriler birkaç shapefile olur

Bir GeoJSON dosyası noktaları, çizgileri ve poligonları bir arada tutabilir; shapefile tutamaz. Her tür için bir shapefile alırsınız, ör. parklar_points.shp, parklar_lines.shp ve parklar_polygons.shp, hepsi tek bir .zip içinde. Çok parçalı objeler kendi türlerine gider. Geometrisi GeometryCollection veya null olan bir obje bu dosyaların hiçbirine uymaz ve dışarıda kalır; dönüştürmeden sonraki mesaj kaç tane olduğunu söyler.

İç içe değerler, true/false ve tarihler

.dbf tablosu yalnızca metin, sayı ve tarih gibi düz değerler tutar. İç içe nesneler JSON metni olarak, basit listeler ise iki değer anlamına gelen (2:a,b) gibi metinler olarak yazılır. True ve false 1 ve 0 olur, 2024-05-01 gibi yalın tarihler gerçek tarih alanlarına dönüşür. Saat içeren bir tarih metin olarak kalır, çünkü .dbf tarih alanı saati tutamaz. 254 karakterden uzun metinler kesilir.

Koordinat sistemi ve .prj dosyası

Standart GeoJSON, WGS84 boylam ve enlemidir; bu yüzden shapefile varsayılan olarak WGS84'te (EPSG:4326) ve uygun bir .prj ile yazılır. Metre veya fit cinsinden koordinatlar için projeksiyonlu bir sistem girin, ör. EPSG:5254 (TUREF / TM30). Farklı bir sistemi bir “crs” üyesinde belirten eski GeoJSON dosyaları o sistemde okunur ve siz başka bir sistem seçmedikçe shapefile bu sistemi korur.

Özel karakterler

Öznitelik metni UTF-8 olarak yazılır ve bunu belirten bir .cpg dosyası eklenir; ArcGIS de QGIS de bu dosyayı okur. ç, ğ, ş veya ü gibi karakterler içeren adlar doğru görünür. .cpg dosyasını yok sayan eski yazılımlar bunları yanlış gösterebilir.

Dosya biçimleri hakkında

GeoJSON

GeoJSON, coğrafi nesneler için düz metin bir JSON biçimidir ve 2016'da RFC 7946 olarak standartlaştırıldı. Leaflet, MapLibre ve Mapbox gibi web haritalarının ve birçok API'nin doğal biçimidir.

  • Koordinatlar WGS84 boylam, enlem şeklindedir (bu sırayla).
  • Noktalar, çizgiler ve poligonlar tek bir dosyada karıştırılabilir.
  • Özellikler (properties) herhangi bir JSON değeri olabilir; alan adı uzunluğunda sınır yoktur.

Shapefile

Esri Shapefile, en yaygın kullanılan GIS vektör biçimidir. Tek bir “shapefile” aslında aynı adı taşıyan bir dosya grubudur: .shp geometriyi, .shx bir dizini, .dbf öznitelik tablosunu, isteğe bağlı .prj koordinat sistemini ve .cpg metin kodlamasını tutar.

  • En az .shp, .shx ve .dbf dosyaları gerekir. Bunları birlikte veya tek bir .zip olarak seçin.
  • Alan adları 10 karakterle, metin değerleri 254 karakterle sınırlıdır.
  • Her shapefile yalnızca tek bir geometri türü içerir: noktalar, çizgiler veya poligonlar.
  • .prj dosyası olmadan koordinat sistemi bilinmez.

Sıkça sorulan sorular

Zip içinde hangi dosyalar var?

Verilerinizdeki her geometri türü için aynı ada sahip .shp, .shx, .dbf, .prj ve .cpg dosyalarını alırsınız. Bunları tek bir klasörde bir arada tutun; CBS yazılımlarının en az ilk üçüne ihtiyacı vardır.

Neden bir yerine üç shapefile aldım?

GeoJSON'unuz noktaları, çizgileri ve poligonları karışık içeriyor. Bir shapefile bunlardan yalnızca birini tutabildiği için dönüştürücü, veri atmak yerine her tür için bir shapefile yazar.

Uzun alan adlarımı koruyabilir miyim?

Shapefile'da hayır: 10 karakter sınırı biçimin bir parçasıdır. GeoPackage biçiminde böyle bir sınır yoktur ve QGIS ile ArcGIS Pro'da açılır; dosyayı alacak kişinin bunu kabul edip etmediğini sormaya değer.

.json dosyalarını kabul ediyor mu?

Evet, içerik GeoJSON olduğu sürece: bir FeatureCollection, tek bir Feature veya yalın bir geometri.

GeoJSON'um bir sunucuya gönderiliyor mu?

Hayır. Shapefile, tarayıcınız tarafından kendi bilgisayarınızda yazılır. Hiçbir veri bilgisayarınızdan çıkmaz.