【问题标题】:R or Java: Is there a package to convert zip codes to latitude and longitude and put on a map?R或Java:是否有将邮政编码转换为纬度和经度并放在地图上的包?
【发布时间】:2012-03-08 21:55:03
【问题描述】:

是否有任何包裹或包裹组合可以获取邮政编码列表和:

1) 将它们转换为经纬度

2) 将点放在地图上

【问题讨论】:

    标签: java r geolocation


    【解决方案1】:

    尝试来自 CRAN 的 install.packages("zipcode") 在 R 中获取此信息。这提供了一个 data(zipcode) 附件,它是一个包含您需要的信息的 data.frame。

    关于在地图上绘制邮政编码信息,请使用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"))
    

    【讨论】:

    • 哇!加拿大有类似的吗?
    【解决方案2】:

    【讨论】:

      【解决方案3】:

      我在这里玩的有点晚了,但我已经用 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();
      

      【讨论】:

        【解决方案4】:

        我在这里找到了一个可以为你做这件事的网站: GPS Visualizer.

        【讨论】:

          猜你喜欢
          • 2012-10-30
          • 1970-01-01
          • 2021-06-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-10-27
          • 2020-04-10
          • 2014-03-17
          相关资源
          最近更新 更多