相关疑难解决方法(0)

R:计算两个地理点之间的距离

我有兴趣学习如何在 R 中使用道路网络文件。

例如,我有兴趣找出以下两个(加拿大)地址之间的驾驶距离:

  • 加拿大国家电视塔:290 Bremner Blvd, Toronto, ON M5V 3L9
  • 多伦多机场:6301 Silver Dart Dr, Mississauga, ON L5P 1B2

过去,我会使用 OpenStreetMap (OSM) 等 API:

library(tmap)


library(tmaptools)
remotes::install_github("riatelab/osrm")

q1 = geocode_OSM("6301 Silver Dart Dr, Mississauga, ON L5P 1B2")
q2 = geocode_OSM("290 Bremner Blvd, Toronto, ON M5V 3L9")

q1 = as.numeric(q1$coords)
q2 = as.numeric(q2$coords)

q1_lat = q1[1]
q1_long = q1[2]
q2_lat = q2[1]
q2_long = q2[2]

route = osrmRoute(src = c(q1[1], q1[2]) ,  dst = c(q2[1], q2[2]), osrm.profile = "car")

> route$distance …
Run Code Online (Sandbox Code Playgroud)

r geospatial shapefile

3
推荐指数
1
解决办法
966
查看次数

标签 统计

geospatial ×1

r ×1

shapefile ×1