2012-11-20 43 views
0

我有一個igraph函數的奇怪問題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... 

Gephies偏心值預計由於直徑3 :)

我不明白我在做什麼都錯了2S和3S。

回答

3

似乎是eccentricity例程中的一個錯誤(radius只是調用eccentricity所以這兩個問題很可能是相關的)。作爲一種解決方法,您可以使用shortest.paths(它似乎工作正常),然後採用行方式的最大值來獲得偏心分數。半徑只是最小的偏心率。

更新:您可以按照錯誤報告here的進度。

+0

是的,我已經明白了這一點,它適用於 ecc < - apply(shortest.paths(sg),2,max) –

+1

FWIW,我在此期間修正了錯誤。如果您願意重新編譯R擴展程序,請從明天晚上從http://code.google.com/p/igraph下載最新版本。任何晚於#3014的修訂都應該可以。 –