我希望能够在MapEnv
包中的maps
目前无法使用的地图上使用map.where功能 - 例如巴西的这些地图:{{3} }。它们比maps
包中的可用级别更精细。
是否有将它们添加到包数据中以便maps.where
可以使用它们?
答案 0 :(得分:1)
是的,通常可以将shp文件加载到map()中。但是,您需要额外的软件包才能首先读取shp文件。此外,您还必须知道命名多边形的字段的名称。 例如,使用链接中的一个地图:
> ufebrasil <- rgdal::readOGR("UFEBRASIL.shp")
> names(ufebrasil)
[1] "ID" "CD_GEOCODU" "NM_ESTADO" "NM_REGIAO"
> mymap=maps::SpatialPolygons2map(ufebrasil, namefield="NM_ESTADO")
> map.where(mymap, -48.6, -26.46)
[1] "SANTA CATARINA:1"
您也可以直接致电
mymap = maps :: map(ufebrasil,namefield =&#34; NM_ESTADO&#34;)
绘制地图并提供与上面相同的地图数据(如果需要,map()将自动调用SpatialPolygons2map。)