Tôi muốn lấy đầu ra XML của truy vấn Xapi và hiển thị nó bằng tờ rơi hoặc polymaps. Làm thế nào tôi có thể làm điều đó? Có cách nào dễ dàng để chuyển đổi XML sang Geojson không
Tôi muốn lấy đầu ra XML của truy vấn Xapi và hiển thị nó bằng tờ rơi hoặc polymaps. Làm thế nào tôi có thể làm điều đó? Có cách nào dễ dàng để chuyển đổi XML sang Geojson không
Câu trả lời:
OSM2GEO - Trình chuyển đổi JS để chuyển đổi OSM sang 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."
Tín dụng cho P.Arunmozhi
Bạn có thể chuyển đổi OSM XML sang GeoJson bằng ogr2ogr. Để chuyển đổi sang GeoJSON mà không gặp phải lỗi sau:
ERROR 6: GeoJSON driver doesn't support creating more than one layer
Bạn có thể sử dụng một trong các lệnh sau hoặc tất cả chúng:
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 là một trình chuyển đổi OSM-to-GeoJSON khác, có một vài lợi ích khi so sánh với điều này (OSM2GEO) hoặc osm-and-Geojson:
Thư viện đã được sử dụng trên Geojson.io cũng như overpass-turbo.eu .
Plugin OpenStreetMap cho Leaflet là một cách khác để làm điều này. Bằng cách này, bạn có thể sử dụng truy vấn Xapi trực tiếp trong mã của mình. Mặc dù nó chỉ có ý nghĩa đối với một bộ dữ liệu nhỏ vì yêu cầu mất một lúc.
Sử dụng osmtogeojson như được viết trong hướng dẫn này :
osmtogeojson Pittsburgh.xml > Pittsburgh.geojson