本实验在王佳琳建好的黑龙江高速公路真实路网的邻接矩阵基础上,尝试得到OD点的最短路径。进而运用一日的黑龙江收费数据,计算各段link的交通量。
本实验更正了上一次实验的基础数据,由200个点更正为199个点。
library(HVS) library(magrittr) library(knitr)
load("D:/R/packages/HVS/data-raw/hlj_roadnet.RData") load("D:/R/packages/HVS/data-raw/hrbs.RData") load("D:/R/packages/HVS/data-raw/indextable.RData")
result <- dijkstra_matrix(weight_mat = hlj_roadnet) mileage <- result[[1]] path <- result[[2]]
dim(hrbs)
hrbs$ENSEQ <- indextoseq(hrbs$ENSTATIONINDEX) hrbs$EXSEQ <- indextoseq(hrbs$EXSTATIONINDEX)
去掉序号为0的,即编码找不到的
hrbs <- hrbs[hrbs$ENSEQ != 0 & hrbs$EXSEQ != 0,] dim(hrbs)
hrbs$path <- mapply(function(O,D) path[[O]][[D]],hrbs$ENSEQ,hrbs$EXSEQ) head(hrbs$path)
hrbs$link <- lapply(hrbs$path,extract_link) head(hrbs$link)
alllink <- all_link(hlj_roadnet) alllink
library(parallel) cores <- detectCores() cluster <- makePSOCKcluster(cores) l <- parLapply(cluster,alllink,caculate_natureflow,hrbs$link) names(l) <- alllink
d <- data.frame(traffic_volumn = simplify2array(l)) d$seqlink <- rownames(d) d$indexlink <- seqlinktoindexlink(rownames(d)) head(d,20)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.