osm数据下载 python_GIS Experience (十):OSM数据获取
1 前言
OpenStreetMap(OSM)意在創(chuàng)造一個(gè)內(nèi)容自由且能讓所有人編輯的世界地圖,詳見官網(wǎng)。
2 數(shù)據(jù)獲取
2.1 官網(wǎng)下載
1)搜索區(qū)域
2)查看詳情
3)將圖層放大至一定比例,即可直接將矩形區(qū)域?qū)С鰹閤ml格式文件。備注:也可選擇許可協(xié)議下的Overpass API直接鏡像下載
2.2 Overpass API下載
Overpass API提供沿地理邊界獲取數(shù)據(jù)的功能,較矩形數(shù)據(jù)更有實(shí)用性。
1)查詢地區(qū)代碼(可通過官網(wǎng)查看詳情直接復(fù)制替代)
<osm-script><query type="relation"><has-kv k="boundary" v="administrative"/><has-kv k="name:zh" v="成都市"/></query># 兩種輸出任選其一# 保存為xml<print/></osm-script># 保存為json<print/><osm-script output="json">2)獲取路網(wǎng)數(shù)據(jù) 根據(jù)地區(qū)代碼可以確定ref=36000000000 + citycode,最終得到OSM標(biāo)準(zhǔn)格式的interprept文件。
<osm-script timeout="1800" element-limit="100000000"><union><area-query ref="3602782246"/><recurse type="node-relation" into="rels"/><recurse type="node-way"/><recurse type="way-relation"/></union><union><item/><recurse type="way-node"/></union><print mode="body"/> </osm-script>2.3 Geofabrik下載
Geofabrik數(shù)據(jù)優(yōu)點(diǎn)在于屬性信息較多,下載數(shù)據(jù)格式為shp,無需二次格式轉(zhuǎn)換。缺點(diǎn)為china-latest.shp.zip數(shù)據(jù)文件過大,對(duì)網(wǎng)絡(luò)質(zhì)量不佳的朋友較痛苦,且裁剪工作需要底圖。
3 OSM標(biāo)準(zhǔn)格式轉(zhuǎn)SHP
| 工具 | 推薦指數(shù) | 耗時(shí)程度 | 缺點(diǎn) | |--|--|--|--| | QGIS | ★★★ | ★ | 無法直接顯示時(shí),先將圖層另存為(不需要坐標(biāo)轉(zhuǎn)換) | | geoconverter | ★★ | ★★ | 中文屬性數(shù)據(jù)亂碼,且受制于網(wǎng)絡(luò)狀況 | | ArcGIS Editor for OpenStreetMap | ★★ | ★★★ | 流程略繁瑣,但數(shù)據(jù)質(zhì)量高 |
3.1 QGIS轉(zhuǎn)換
注意:若出現(xiàn)加載OSM不顯示地圖的情形,這是因當(dāng)前QGIS界面展示位置沒有定位到OSM實(shí)際數(shù)據(jù)位置所致,對(duì)OSM數(shù)據(jù)應(yīng)用縮放到圖層范圍無效,可先將其中一個(gè)圖層直接導(dǎo)出為shp,重新加載此OSM數(shù)據(jù)即可
1)直接加載OSM數(shù)據(jù)
2)格式轉(zhuǎn)換,轉(zhuǎn)換結(jié)束后自動(dòng)加載shp
3.2 網(wǎng)頁轉(zhuǎn)換
geoconverter方便快捷,支持導(dǎo)出多種格式。
1)導(dǎo)入數(shù)據(jù)
2)輸出格式
3)存儲(chǔ)結(jié)果
4)數(shù)據(jù)展示——亂碼
5)針對(duì)網(wǎng)頁轉(zhuǎn)換亂碼,可將輸出格式轉(zhuǎn)為gpkg(本地地理數(shù)據(jù)庫)
3.2 ArcGIS Editor for OpenStreetMap
ArcGIS Editor for OpenStreetMap不同版本下載地址,詳見https://github.com/Esri/arcgis-osm-editor
總結(jié)
以上是生活随笔為你收集整理的osm数据下载 python_GIS Experience (十):OSM数据获取的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: arm-linux-gcc 硬浮点,AR
- 下一篇: C语言字符串倒排,C语言兑现简单的倒排文