Last chance! 50% off unlimited learning
Sale ends in
Takes origins and destinations, finds the optimal routes between them and returns the result as a spatial (sf or sp) object. The definition of optimal depends on the routing function used
route(
from = NULL,
to = NULL,
l = NULL,
route_fun = cyclestreets::journey,
wait = 0,
n_print = 10,
list_output = FALSE,
cl = NULL,
...
)
An object representing origins
(if lines are provided as the first argument, from is assigned to l
)
An object representing destinations
Only needed if from and to are empty, in which case this should be a spatial object representing desire lines
A routing function to be used for converting the straight lines to routes
od2line()
How long to wait between routes? 0 seconds by default, can be useful when sending requests to rate limited APIs.
A number specifying how frequently progress updates should be shown
If FALSE (default) assumes spatial (linestring) object output. Set to TRUE to save output as a list.
Cluster
Arguments passed to the routing function, e.g. route_cyclestreets()
Other routes:
line2routeRetry()
,
line2route()
,
route_dodgr()
,
route_local()
,
route_osrm()
,
route_transportapi_public()
# NOT RUN {
library(sf)
l = od_data_lines[2, ]
# }
# NOT RUN {
if(curl::has_internet()) {
r_walk = route(l = l, route_fun = route_osrm, osrm.profile = "foot")
r_bike = route(l = l, route_fun = route_osrm, osrm.profile = "bike")
plot(r_walk$geometry)
plot(r_bike$geometry, col = "blue", add = TRUE)
# r_bc = route(l = l, route_fun = route_bikecitizens)
# plot(r_bc)
# route(l = l, route_fun = route_bikecitizens, wait = 1)
library(osrm)
r_osrm <- route(
l = l,
route_fun = osrmRoute,
returnclass = "sf"
)
nrow(r_osrm)
plot(r_osrm)
sln <- stplanr::SpatialLinesNetwork(route_network_sf)
# calculate shortest paths
plot(sln)
plot(l$geometry, add = TRUE)
r_local <- stplanr::route(
l = l,
route_fun = stplanr::route_local,
sln = sln
)
plot(r_local["all"], add = TRUE, lwd = 5)
}
# }
Run the code above in your browser using DataLab