OSMnx除了介接了Overpass API,可以透過python方便的取得OpenStreetMap的圖資以外,它還提供了一些路網相關的分析方法,這些方法主要是來自networkX。
OSMnx除了介接了Overpass API,可以透過python方便的取得OpenStreetMap的圖資以外,它還提供了一些路網相關的分析方法,這些方法主要是來自networkX。
昨天簡單介紹了networkX
,我們可以透過把路網polyline轉為node,edge的graph(s2g
)來做graph相關操作,例如最短路徑等等。
OSMnx
也是相關的應用,OSMnx結合了Overpass API
,讓開發者可以在python中快速取得OpenStreetMap的資料,在路網圖層中,其與networkX
結合可進行一些grpah的分析操作。
ps.除了路網外,OSMnx也可取得其他OpenStreetMap的圖層喔
今天要來寫GIS與路網相關的(當然只要跟graph有關的都可以使用,例如管線)一些應用。
在GIS及LBS應用中少不了路徑規劃,這些路網資料的應用路主要基於graph,networkX
可以用來建立及操作graph的工具,它可以產生各種garph,也包含了很多graph演算法。
今天的主題與Python較於無關,這陣子遇到資料版本控制的需求,有搜尋並測試了一下geogig
這個軟體,在此稍微紀錄一下。
geogig
是個開源專案,使用JAVA開發並以BSD授權,主要目的是做GIS資料的版本控制,整個操作經驗與git
類似,支援的GIS資料包含shapefile
、PostGIS
、SpatiaLite
等,對每一次commit的GIS追蹤管理,也可對資料開分支、遠端分支等等功能。
今天就記錄一下比較基本的步驟。