igraph半径和直径

jyztefdp  于 2022-12-27  发布在  其他
关注(0)|答案(2)|浏览(152)

我在igraph函数上遇到了一个奇怪的问题
我有一个密度很高(0.4)的无向图(N=423),为了测试从igraph得到的值,我使用了Gephi。
我已经检查了Gephi,他们报告的度数和直径都是一样的,但是igraph报告的半径和偏心率完全错误,应该是更高的值。而且,半径总是小于直径,对吗?这里它更大:)

> sg <- simplify(graph.edgelist(edges, directed=F))
> radius(sg)
[1] 8
> diameter(sg)
[1] 3
head(eccentricity(sg))
[1] 10 11 10 12 11 14
> str(sg)
IGRAPH U--- 423 41064 -- 
+ edges:
1 --   3   4   6   8   9  15  25  26  28  30  37  38  41  42  47  48  49  50  53  58  63  66  68  69  71  72  76  81  83  87  88  90  95
....etc...
....etc...

由于直径为3,因此Gophies偏心率值均为2s和3s:)
我不知道我做错了什么。

bttbmeg0

bttbmeg01#

我还想问一下igraph中的离心率是否考虑了加权图中的权重,因为我认为半径和离心率不考虑权重

js5cn81o

js5cn81o2#

似乎是eccentricity例程中的一个bug(radius只调用eccentricity,因此这两个问题很可能是相关的)。作为一种解决方案,您可以使用shortest.paths(似乎工作正常),然后取行方向的最大值来获得偏心率分数。半径只是最小偏心率。

更新:您可以跟踪错误报告here的进度。

相关问题