Come si converte l'OSM XML in geojson?


17

Voglio prendere l'output XML di una query Xapi e visualizzarlo utilizzando opuscoli o polymap. Come posso fare ciò? Esiste un modo semplice per convertire XML in geojson


Grazie per il tuo suggerimento Ho provato come avete proposto voi ragazzi, ma sfortunatamente la conversione non è riuscita con il seguente errore !!! <i> Qualcuno può suggerire per favore? Grazie in anticipo per il tuo tempo .... </i> C: \ Programmi \ FWTools2.4.7 \ bin> ogr2ogr -f GeoJSON D: \ New.geojson D: \ z.pbf <B> GUASTO: Impossibile aprire origine dati `z.pbf 'con i seguenti driver. <br> -> ESRI Shapefile <br> -> MapInfo File <br> -> UK .NTF <br> -> SDTS <br> -> TIGER <br> -> S57 <br> -> DGN <br> - > VRT <br> -> REC <br> -> Memoria <br> -> BNA <br> -> CSV <br> -> NAS <br> -> GML <br> -> GPX <br> -> KML <br> -> GeoJSON <br> ->

Questa sembra essere una nuova domanda piuttosto che una risposta. In tal caso, pubblicalo come una nuova domanda.
Martin,

Risposte:


7

OSM2GEO - Un convertitore JS per convertire OSM in 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."

Ringraziamo P.Arunmozhi

https://gist.github.com/1396990


10

La versione di sviluppo (di marzo 2013) di gdal ha letto il supporto per OSM , sia per il semplice formato XML che PBF.

Quindi puoi convertire il tuo file OSM con:

ogr2ogr -f GeoJSON myfile.geojson myfile.osm.pbf


8

È possibile convertire XML OSM in GeoJson con ogr2ogr. Per convertire in GeoJSON senza ottenere il seguente errore:

ERROR 6: GeoJSON driver doesn't support creating more than one layer

È possibile utilizzare uno dei seguenti comandi o tutti:

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

6

osmtogeojson è ancora un altro convertitore da OSM a GeoJSON, che presenta alcuni vantaggi rispetto a questo (OSM2GEO) o osm-and-geojson:

  1. può essere utilizzato come strumento da riga di comando e come libreria javascript (browser e nodejs).
  2. supporto multipoligono adeguato
  3. sofisticato rilevamento poligonale
  4. stabile (può far fronte a dati OSM incompleti)
  5. ben testato
  6. Più veloce

La libreria è già in uso su geojson.io e su overpass-turbo.eu .


Non supporta i dati storici (.osh.pbf)
Max von Hippel,

So che questo commento arriva in ritardo .. questo strumento è fantastico (sembra sempre funzionare) ma è LENTO. Attualmente stiamo valutando alternative a osmtogeojson perché anche la conversione di un output di overpass di ~ 100 MB richiede circa 40 secondi su una macchina ragionevolmente potente. Stiamo cercando di vedere se GDAL può essere un'alternativa per motivi di velocità. Se la velocità non è un problema, raccomando questa libreria.
Tommy


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.