确定两个邮政编码之间的距离(mapdist的替代方案)

maj*_*jom 14 r spatial geospatial google-maps-api-3 ggmap

我想计算大约之间的距离.100,000种不同的邮政编码.我知道包中的mapdist功能ggmap

mapdist 完美的工作:

library(ggmap)
mapdist('Washington', 'New York', mode = 'driving')

#         from       to      m      km    miles seconds  minutes    hours
# 1 Washington New York 366284 366.284 227.6089   13997 233.2833 3.888056


mapdist('20001', '10001', mode = 'driving')

#    from    to      m      km    miles seconds minutes    hours
# 1 20001 10001 363119 363.119 225.6421   13713  228.55 3.809167
Run Code Online (Sandbox Code Playgroud)

但是,mapdist依赖于Google地理编码API,该API 每天的查询限制为2,500个地理定位请求.

您是否知道使用具有更高请求限制的其他服务(例如诺基亚地图或必应)来计算两点之间距离的替代r代码?

Ari*_*man 14

taRifx.geo::georoute(仅在此处推出,直到我推出另一个更新,此时它将可用install.packages)可以使用Bing地图(支持我相信每天25k)并且可以返回距离.

georoute( c("3817 Spruce St, Philadelphia, PA 19104", 
            "9000 Rockville Pike, Bethesda, Maryland 20892"), 
             verbose=TRUE, returntype="time", 
             service="bing" )
Run Code Online (Sandbox Code Playgroud)

您必须获取Bing Maps API密钥并将其设置在R全局选项中(理想位置在.Rprofile),但密钥是免费的:

options(BingMapsKey="whateverBingGivesYouForYourKey")
Run Code Online (Sandbox Code Playgroud)