Вставьте альтернативные дороги в OpeenStreetMap из файла шейп-файла. Это возможно? - PullRequest
1 голос
/ 08 мая 2020

Я хотел бы задать вопрос: я использовал приведенный ниже код, чтобы найти кратчайший путь между одной точкой и другой, используя файл точек в формате шейп-файла. Я смог вставить маршрут и график на карту с помощью пакета osrm. Маршрут проложен и просматривается OpenStreetMap, как вы можете видеть во вложении. Однако у меня есть еще один шейп-файл, который представляет собой просто шоссе и содержит альтернативные дороги, которых нет в OpeenStreetMap.

Итак, можно ли каким-то образом вставить эти альтернативные дороги в OpenStreetMap? Если нет, вы можете указать альтернативы тому, что я могу сделать, так как я хочу нанести этот кратчайший путь на карту, однако OP не имеет всех возможных дорог.

library(sf)
library(osrm)
library(cartography)

shp<-read_sf("point_UTM.shp")
shp<-st_transform(shp,4326) #

#shortest path between 9 and 15
dr<-osrmRoute(shp[9,],shp[15,], returnclass = "sf")
plot(st_geometry(dr))

#create route for map
route <- osrmRoute(src = shp[9,], dst = shp[15,],
                   overview = "full", returnclass = "sf")

#Map view
osm <- getTiles(x = route, crop = TRUE, type = "osm", zoom = 13)
tilesLayer(osm)

# add map route
tilesLayer(osm)
plot(st_geometry(route), lwd = 4, add = TRUE)
plot(st_geometry(route), lwd = 1, col = "white", add = TRUE)
plot(st_geometry(shp[c(9,15),]), pch = 20, col = "red", add = TRUE)

Большое спасибо!

enter image description here

...