有没有任何软件包或软件包组合可以将邮政编码列表转换为经纬度,并将这些点放在地图上呢?
1) 将它们转换为经纬度
2) 在地图上标注这些点
有没有任何软件包或软件包组合可以将邮政编码列表转换为经纬度,并将这些点放在地图上呢?
1) 将它们转换为经纬度
2) 在地图上标注这些点
install.packages("zipcode")
在R中获取此信息。这将提供一个data(zipcode)
附件,其中包含您需要的信息。map
包和空间例程包sp
。以下是一个示例。## Preliminary
library(maps)
library(zipcode)
library(sp)
data(zipcode)
## Plot state map of USA
map("state")
## Select locations for 100 random zip codes
plotZip <- zipcode[sample(nrow(zipcode))[1:100], c("longitude", "latitude")]
## Plot them
plot(SpatialPoints(plotZip[complete.cases(plotZip),]), pch=20, cex=0.75, add=TRUE, col="red")
为了选择一个邮政编码列表以绘制子集zipcode
,需要提供所需邮政编码的向量。 然后重新创建plotZip
:
plotZip <- subset(zipcode,
subset=(zip %in% c(90210, 90211)),
select=c("longitude", "latitude"))
我来晚了,但是我已经用Java编写了一个内存中的邮政编码数据库API,称为QuickGeo。它不会映射项目,但它可以快速地查询zip->lat/lon信息。要查询西雅图邮政编码的纬度/经度:
PostalDb db = PostalDbFactory.getPostalDb();
Place p = db.byPostalCode("98177").get(0);
double lat = p.getLatitude();
double lon = p.getLongitude();