更新了 R "maps"包的世界地图?


library(maps)
1> map.where(database="world",29.392089,53.592505)
[1] "USSR"

有谁知道我怎么能得到一个更新的世界地图数据库来驱动这个功能在地图包?我现在只需要国家名称,不需要详细的地方行政信息,比如gadm.org上的信息。

maptools包中尝试wrld_simpl

require(maptools)
data(wrld_simpl)
plot(wrld_simpl)
## or subset based on the name
plot(wrld_simpl[wrld_simpl$NAME == "Russia", ])
## explore other attributes
summary(wrld_simpl)

我不知道它是如何更新的,但是?wrld_simpl描述了源代码,所以你可能会在链接下面找到好东西。其他依赖于sp的包也值得探索数据。

除此之外,还有Rgshhs包,尽管我不确定它是否仍然可用。它有相当的细节,但你可以下载更多,如果你需要它。这有点复杂,原始数据在这里:http://www.ngdc.noaa.gov/mgg/shorelines/gshhs.html

如果你有自己的数据,你也可以使用rgdal从矢量格式(如MIF或SHP或PostGIS)读取数据,或者maptools中类似的读取函数仅用于shapefile。

使用点查询对象的示例:

require(sp)
require(maptools)
data(wrld_simpl)
pts <- SpatialPoints(cbind(c(29.392089,147), c(53.592505, -35)), CRS(proj4string(wrld_simpl)))
over(pts, wrld_simpl)$NAME

有关sp中这些函数和其他函数的介绍,请参见vignette("sp")。

还可以尝试geonames包来查询更通用的地理名称。

最新更新