Saya ingin mengambil output XML dari permintaan Xapi dan menampilkannya menggunakan leaflet atau polymaps. Bagaimana saya bisa melakukan itu? Apakah ada cara mudah untuk mengkonversi XML ke geojson
Saya ingin mengambil output XML dari permintaan Xapi dan menampilkannya menggunakan leaflet atau polymaps. Bagaimana saya bisa melakukan itu? Apakah ada cara mudah untuk mengkonversi XML ke geojson
Jawaban:
OSM2GEO - Konverter JS untuk mengonversi OSM ke GeoJSON
* OSM2GEO - OSM to GeoJSON converter
* OSM to GeoJSON converter takes in a .osm XML file as input and produces
* corresponding GeoJSON object.
*
* AUTHOR: P.Arunmozhi <>
* DATE : 26 / Nov / 2011
* LICENSE : WTFPL - Do What The F##% You Want To Public License
* LICENSE URL: http://sam.zoy.org/wtfpl/
*
* DEPENDENCY: OSM2GEO entirely depends on jQuery for the XML parsing and
* DOM traversing. Make sure you include <script src="somewhere/jquery.js">
* </script> before you include osm2geo.js
*
* USAGE: This script contains a single function -> geojson osm2geo(osmXML)
* It takes in a .osm (xml) as parameter and returns the corresponding
* GeoJson object."
Kredit ke P.Arunmozhi
Versi pengembangan (seperti Maret 2013) dari gdal telah membaca dukungan untuk OSM , baik untuk format XML dan PBF biasa.
Jadi Anda dapat mengonversi file OSM Anda dengan:
ogr2ogr -f GeoJSON myfile.geojson myfile.osm.pbf
Anda dapat mengonversi OSM XML ke GeoJson dengan ogr2ogr. Untuk mengonversi ke GeoJSON tanpa mendapatkan kesalahan berikut:
ERROR 6: GeoJSON driver doesn't support creating more than one layer
Anda dapat menggunakan salah satu dari perintah berikut atau semuanya:
ogr2ogr -f GeoJSON points.json data.osm.pbf points
ogr2ogr -f GeoJSON lines.json data.osm.pbf lines
ogr2ogr -f GeoJSON multilinestrings.json data.osm.pbf multilinestrings
ogr2ogr -f GeoJSON multipolygons.json data.osm.pbf multipolygons
ogr2ogr -f GeoJSON other_relations.json data.osm.pbf other_relations
osmtogeojson adalah konverter OSM-to-GeoJSON yang lain, yang memiliki beberapa manfaat jika dibandingkan dengan ini (OSM2GEO) atau osm-and-geojson:
Perpustakaan sudah digunakan di geojson.io dan juga overpass-turbo.eu .
Plugin OpenStreetMap untuk Leaflet adalah cara lain untuk melakukan ini. Dengan cara ini Anda dapat menggunakan kueri Xapi Anda secara langsung dalam kode Anda. Meskipun hanya masuk akal untuk set data kecil karena permintaan membutuhkan waktu.
Gunakan osmtogeojson seperti yang tertulis dalam panduan ini :
osmtogeojson Pittsburgh.xml > Pittsburgh.geojson