如何从 REST 获取路由折线 API
How to obtain route polyline from REST API
我正在使用 R 中的 Shiny 和传单开发一个应用程序。我需要绘制使用 REST API 获取的路径。
我尝试使用这个获得多段线:
query <- paste0("&waypoint0=geo!",
lat_usuario,
",",
long_usuario,
"&waypoint1=geo!",
lat_of,
",",
long_of,
"&departure=", fecha,
"&mode=fastest;car;traffic:enabled")
paste0("https://route.api.here.com/routing/7.2/calculateroute.json",
"?app_id=", App_id, "&app_code=", App_code, query) %>%
RCurl::getURL(verbose = FALSE) %>%
RJSONIO::fromJSON() %>%
.[["response"]] %>%
.[["route"]] %>%
.[[1]] %>%
.[["leg"]] %>%
.[[1]] %>%
.[["maneuver"]] %>%
sapply("[[", "position") %>%
return()
但是,当我使用这段代码表示时:
leafletProxy("mapa", data = values$tabla) %>%
clearShapes() %>%
addPolylines(pol[2,], pol[1,], stroke=0.2)
我获悉多段线不在街道内。如图:
如何绘制街道内的路线?
自己解决了
关键是在查询中包含“&routeAttributes=sh”。然后,我们收到路线的形状(以便能够绘制它们)。
我正在使用 R 中的 Shiny 和传单开发一个应用程序。我需要绘制使用 REST API 获取的路径。
我尝试使用这个获得多段线:
query <- paste0("&waypoint0=geo!",
lat_usuario,
",",
long_usuario,
"&waypoint1=geo!",
lat_of,
",",
long_of,
"&departure=", fecha,
"&mode=fastest;car;traffic:enabled")
paste0("https://route.api.here.com/routing/7.2/calculateroute.json",
"?app_id=", App_id, "&app_code=", App_code, query) %>%
RCurl::getURL(verbose = FALSE) %>%
RJSONIO::fromJSON() %>%
.[["response"]] %>%
.[["route"]] %>%
.[[1]] %>%
.[["leg"]] %>%
.[[1]] %>%
.[["maneuver"]] %>%
sapply("[[", "position") %>%
return()
但是,当我使用这段代码表示时:
leafletProxy("mapa", data = values$tabla) %>%
clearShapes() %>%
addPolylines(pol[2,], pol[1,], stroke=0.2)
我获悉多段线不在街道内。如图:
如何绘制街道内的路线?
自己解决了
关键是在查询中包含“&routeAttributes=sh”。然后,我们收到路线的形状(以便能够绘制它们)。