แปลง GML เป็น GeoJSON


9

ฉันได้ดาวน์โหลดไฟล์ GML จาก Statistics Canada และต้องการแปลงเป็น GeoJSON เพื่อใช้บางส่วนของมันในการสร้างภาพ D3 บนเว็บ อย่างไรก็ตามฉันไม่พบตัวแปลงที่จะทำเพื่อฉัน (ฉันลองhttp://converter.mygeodata.eu/แต่ GeoJSON ที่ส่งคืนมานั้นไม่มีรูปทรงเรขาคณิตจริง ๆ )

วิธีที่ดีที่สุดในการแปลง GML เป็น GeoJSON คืออะไร

คำตอบ:


17

คุณสามารถใช้ogr2ogr ที่ง่ายต่อการติดตั้งมันจะดาวน์โหลดfwTools

คำสั่งต่อไปนี้จะทำ

ogr2ogr -f "GeoJSON" E:\lakes.geojson e:\lakes.gml

ถ้าคุณมีQuantumGISคุณสามารถเพิ่มเลเยอร์ GML ของคุณลงในแผนที่และโดยการคลิกขวาที่เลเยอร์เลือกบันทึกเป็นรูปแบบ GeoJSON


ขอบคุณ! ฉันลองแล้วฉันได้รับ "ข้อผิดพลาด 1: รูปทรงเรขาคณิตที่ไม่รู้จัก <Surface>" - นี่หมายความว่ามีฟีเจอร์ใน GML ที่ไม่สามารถแปลงเป็น GeoJSON ได้อย่างง่ายดายหรือไม่?
Lars Grammel

2
ตามgis.stackexchange.com/a/11482/5850คุณต้องการ GDAL 1.8.0 หรือสูงกว่า .. เวอร์ชันของคุณคืออะไร?
vinayan

1
@LarsGrammel ลองใช้รุ่นล่าสุดgisinternals.com/sdk/…
vinayan

ฉันใช้ fwTools ล่าสุดสำหรับ Windows (2.4.7) จะลองใช้ GDAL รุ่นล่าสุดตามที่คุณแนะนำ
Lars Grammel

GDAL 1.9.1 (รวมอยู่ใน SDK ล่าสุด) ใช้งานได้สำหรับฉัน ขอบคุณ!
Lars Grammel

0

ตามที่ vinayan กล่าวว่า ogr2ogr จะเป็นทางออกที่ดี แต่วิธีที่มีประโยชน์ที่ฉันเคยใช้ในอดีตเพื่อแปลงรูปแบบเวกเตอร์อย่างรวดเร็วเพื่อใช้ตัวอย่าง OpenLayers ที่มีอยู่นี้:

http://openlayers.org/dev/examples/vector-formats.html

เพียงแค่วาดคุณสมบัติของคุณหรือวางข้อมูลและกดเพิ่มคุณสมบัติ


0

หากคุณมี R Studio (เป็นซอฟต์แวร์ฟรี) คุณสามารถใช้ตัวแปลงที่อยู่ที่นี่เพื่อแปลงไฟล์ GML ขนาดใหญ่เป็น GeoJSON ได้อย่างง่ายดาย:

https://gist.github.com/geotheory/7103991


ตัวอย่างนั้นไม่มีส่วนเกี่ยวข้องกับ GML ถึง GeoJSON
g07kore
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.