Je veux prendre la sortie XML d'une requête Xapi et l'afficher à l'aide d'un dépliant ou de polymaps. Comment puis je faire ça? Existe-t-il un moyen facile de convertir XML en geojson
Je veux prendre la sortie XML d'une requête Xapi et l'afficher à l'aide d'un dépliant ou de polymaps. Comment puis je faire ça? Existe-t-il un moyen facile de convertir XML en geojson
Réponses:
OSM2GEO - Un convertisseur JS pour convertir OSM en 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."
Crédit à P.Arunmozhi
La version de développement (mars 2013) de gdal prend en charge la lecture d' OSM , à la fois pour le format XML et PBF.
Vous pouvez donc convertir votre fichier OSM avec:
ogr2ogr -f GeoJSON myfile.geojson myfile.osm.pbf
Vous pouvez convertir OSM XML en GeoJson avec ogr2ogr. Pour convertir en GeoJSON sans obtenir l'erreur suivante:
ERROR 6: GeoJSON driver doesn't support creating more than one layer
Vous pouvez utiliser l'une des commandes suivantes ou toutes:
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 est encore un autre convertisseur OSM-to-GeoJSON, qui présente quelques avantages par rapport à celui-ci (OSM2GEO) ou osm-and-geojson:
La bibliothèque est déjà utilisé sur geojson.io ainsi que overpass-turbo.eu .
Le plugin OpenStreetMap pour Leaflet est une autre façon de le faire. De cette façon, vous pouvez utiliser votre requête Xapi directement dans votre code. Cela n'a de sens que pour un petit ensemble de données, car la demande prend un certain temps.
Utilisez osmtogeojson comme il est écrit dans ce guide :
osmtogeojson Pittsburgh.xml > Pittsburgh.geojson