我正在尋找將德國,奧地利和瑞士部分地區合併爲一個空間對象的地圖。這個地區應該代表這三個國家的德語地區。我有一些部分,但無法找到合併它們的方法。如果有完全不同的解決方案來解決這個問題,我仍然感興趣。將地圖包中的(兩個半)國家合併爲R中的一個地圖對象
我得到了德國和奧地利的地圖是:
require(maps)
germany <- map("world",regions="Germany",fill=TRUE,col="white") #get the map
austria <- map("world",regions="Austria",fill=TRUE,col="white") #get the map
瑞士是比較複雜的,因爲我只需要60-70%%,這主要是講德語。就是這樣做的(從census report採取)的cantones是
cantonesGerman = c("Uri", "Appenzell Innerrhoden", "Nidwalden", "Obwalden", "Appenzell Ausserrhoden", "Schwyz", "Lucerne", "Thurgau", "Solothurn", "Sankt Gallen", "Schaffhausen", "Basel-Landschaft", "Aargau", "Glarus", "Zug", "Zürich", "Basel-Stadt")
的CANTONE名稱可以與數據一起從gadm.org/country使用(選擇瑞士& SpatialPolygonsDataFrame - > 1級或通過direct link)來獲取講德語的地區從小工具對象:
gadmCH = readRDS("~/tmp/CHE_adm1.rds")
dataGermanSwiss <- gadmCH[gadmCH$NAME_1 %in% cantonesGerman,]
我現在缺少合併步驟以獲取此信息在一起。結果應該如下所示:
它代表一個由合併區域(德國+奧地利+〜瑞士的70%)輪廓組成的組合圖,這些國家之間沒有邊界。如果增加和刪除國家間邊界將是可參數化的,那將是很好但不是必須的。
您是當然的對,我用你的使用子集的代碼替換了我的例子中的循環。 – Exocom