我正在尝试在 R 中运行 osmar 导航演示。此演示将使用 osmar 和 igraph 根据 openstreetmap 数据绘制慕尼黑市中心周围的交通路线。
我在 Lubuntu 上使用 R 版本 3.1.1
演示和 osmar 库在此处详细介绍http://journal.r-project.org/archive/2013-1/eugster-schlesinger.pdf
要运行我键入的演示,
library("osmar")
library("igraph") # The demo tries to call igraph0, but this is
# no-longer available in my version of R, so I
# have changed it to "igraph"
demo("navigator")
演示完美运行,直到到达 igraph 部分。
gr_muc<-as_igraph(hways_muc) # make a graph of the highways from openstreetmap
summary(gr_muc)
这应该返回
Vertices: 2381
Edges: 2888
Directed: TRUE
No graph attributes.
Vertex attributes: name.
Edge attributes: weight, name.
但对我来说它回来了
IGRAPH DNW-2385 2894 --
attr: name (v/c), weight (e/n), name (e/n)
我知道这gr_muc
是一个图,因为命令E(gr_muc)
和V(gr_muc)
返回边和顶点列表。
然后演示运行
route <- get.shortest.paths(gr_muc,from = as.character(hway_start_node),to = as.character(hway_end_node))[[1]]
并返回错误
At structural_properties.c:4482 :Couldn't reach some vertices
这意味着它无法链接开始和结束顶点。然后脚本失败。
为了使演示脚本运行,我要进行哪些更改,为什么它不起作用?