4

R リーフレット Web マップにいくつかの国を重ねるためにリーフレット マップを作成しましたが、投影/レイアウトに問題があるようで、ロシアの一部が隣接するフレームにそれを見つけます。 ここに画像の説明を入力

コード:

library(rworldmap)
library(countrycode)



## country is in text 
cnt <- c("Russia","Afghanistan", "Albania"," Algeria"," Argentina","   Armenia", "Azerbaijan"," Bangladesh"," Belarus")


#convert to ISO3 code
iso3 = countrycode(cnt, "country.name", "iso3c")

df= as.data.frame(cnt)
malMap <- joinCountryData2Map(df, joinCode = "ISO3", nameJoinColumn = "cnt")

## subset data
dfapr <- malMap[malMap$ISO3 %in% iso3, ]
plot(dfapr)

この問題の主な結果は、Web マップを作成している場合、次のようになることです。ここに画像の説明を入力

この問題を解決するにはどうすればよいですか。ISOコードに基づいて国を選択でき、幾何学的に一貫性のある低解像度の世界地図です。

4

1 に答える 1

7

コメントの意味の例を次に示します。

library(sp)
library(maps)
library(maptools)
library(leaflet)

# make sure to use the latest maps package
# it was recently updated at the time of the answer

world <- map("world", fill=TRUE, plot=FALSE)
world_map <- map2SpatialPolygons(world, sub(":.*$", "", world$names))
world_map <- SpatialPolygonsDataFrame(world_map,
                                      data.frame(country=names(world_map), 
                                                 stringsAsFactors=FALSE), 
                                      FALSE)

cnt <- c("Russia", "Afghanistan", "Albania", "Algeria", "Argentina", "Armenia",
         "Azerbaijan", "Bangladesh", "Belarus")

target <- subset(world_map, country %in% cnt)

leaflet(target) %>% 
  addTiles() %>% 
  addPolygons(weight=1)

ここに画像の説明を入力

于 2015-10-09T15:56:01.000 に答える