如何使用随机距离矩阵构建图?

头牟

我想在带有n个顶点的R中生成随机运输图

图应该是两部分的,并且相互连接(通常在2个顶点之间有链接/方式,通常不是直接的顶点),且不带“循环”。

此外,边缘评估应该是随机且严格为正的

我尝试执行以下操作:

n=6  # number of vertices 
F <- erdos.renyi.game(n, p.or.m=0.5, directed=FALSE)
m=ecount(F)
min = 1    # 1 km
max = 50   # 50 km 
F <- set.edge.attribute(F, name="distance", value=runif(m , min , max))
plot(F, layout=layout.fruchterman.reingold)
distances(F)

问题是我无法在图形距离矩阵中得到所需的距离:

     [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    0    2    1    1    2    1
[2,]    2    0    2    1    1    1
[3,]    1    2    0    1    1    1
[4,]    1    1    1    0    2    1
[5,]    2    1    1    2    0    1
[6,]    1    1    1    1    1    0

通常,我应该获得1到50之间的统一随机值。

另外我不确定如果将来我再次执行此代码,该图是否将不包含循环。

我想我的问题很清楚!谢谢您的帮助!

头牟

解决方案 :

n=6  # number of vertices 
F <- erdos.renyi.game(n, p.or.m=0.5, directed=FALSE) # We create the graph F 
m=ecount(F)  # number of edges we obtained using erdos.renyi.game() 
min = 1    # 1 km    # min and max values for the edges flows 
max = 50   # 50 km 
F <- set.edge.attribute(F, name="distance", value=runif(m , min , max)) # The flows are drawn in random 
plot(F, layout=layout.fruchterman.reingold) # we plot the graph F
distances(F)    # matrix of lentghs of the shortest paths between i & j
distances(F, weights = E(F)$distance) # matrix of flows of the shortest paths 
distances(F, v = 1, to = 6, weights = E(F)$distance) # same if we want a specific minimum path between two vertices ( ex : 1--->6 ) 
get.all.shortest.paths(F, 1, to = V(F)) # all shortest paths list 
graph.maxflow(F, 1, 6) # the maximum possible flow of any route between 1--->6 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用 numpy 矩阵构建 newtworkx 图?

来自分类Dev

如何在R中的距离矩阵旁边绘制树状图?

来自分类Dev

如何从R中的距离矩阵生成排序图

来自分类Dev

如何在距离矩阵的热图上绘制树状图

来自分类Dev

如何使用路线的距离创建颜色图

来自分类Dev

如何为布尔矩阵构建类似填字游戏的图

来自分类Dev

从预先计算的距离矩阵绘制树状图

来自分类Dev

如何使用矩阵的不同幂生成图

来自分类Dev

如何使用动态时间包装获取距离矩阵?

来自分类Dev

如何使用python从距离矩阵制作OD对字典?

来自分类Dev

如何使用`grid`创建成对图(类似矩阵的图)?

来自分类Dev

如何使用 Highcharts 构建彩色树状图

来自分类Dev

如何随机显示画线的距离?

来自分类Dev

使用熊猫的欧几里得距离矩阵

来自分类Dev

剧情:如何使用热图制作带注释的混淆矩阵?

来自分类Dev

如何在R中使用相关性而不是欧式距离来创建距离矩阵进行聚类?

来自分类Dev

如何在Github Actions上使用容器设置构建矩阵

来自分类Dev

将距离矩阵与地点和距离api结合使用

来自分类Dev

使用密码计算距离(谷歌地图距离矩阵 API)

来自分类Dev

如何随机分配矩阵元素

来自分类Dev

如何随机分配矩阵元素

来自分类Dev

Matlab:如何输出按距离排序的矩阵

来自分类Dev

如何获得和矩阵而不是距离

来自分类Dev

Matlab:如何输出按距离排序的矩阵

来自分类Dev

如何计算大地理距离矩阵

来自分类Dev

如何从距离和角度获取随机点?

来自分类Dev

使用阿多尼斯比较距离矩阵

来自分类Dev

使用动态规划计算矩阵距离

来自分类Dev

使用自己的计算熊猫创建距离矩阵

Related 相关文章

热门标签

归档