I'm writing a JavaScript library for calculating graph measurements such as degree centrality, eccentrality, closeness and betweenness.
In order to validate my library I use two exist applications Gephi and NodeXL to run calculation with them. The problem is I got what looks like different results.
I build simple graph:
(A) ----- (B) | | | | (C) ----- (D)
Gephi gave those results:
A ecc=2 close=1.333 bet=0.5 B ecc=2 close=1.333 bet=0.5 C ecc=2 close=1.333 bet=0.5 D ecc=2 close=1.333 bet=0.5
NodeXL gave those results:
A close=0.25 bet=0.5 B close=0.25 bet=0.5 C close=0.25 bet=0.5 D close=0.25 bet=0.5
Note that NodeXL does not calculate eccentrality.
Which one is right?
Are the results really different?
I didn't normalize (or at least not intend to normalize) any results.
Asked By : Ido Ran
Answered By : A.Schulz
The closeness of a node in a graph is defined as the reciprocal of the sum of all distances to other nodes.
Since your example is completely symmetric, we only calculate the closeness centrality of $A$.
- distance $A\to B$ is 1
- distance $A\to C$ is 1
- distance $A\to D$ is 2
Therefore the sum of the distances is 4, and the closeness of $A$ is $1/4$. This shows that the NodeXL results are correct. I would advise you to have a look at the manual of Gephi to check how the closeness is computed here. It should be definitely be smaller than 1.
Best Answer from StackOverflow
Question Source : http://cs.stackexchange.com/questions/6382
0 comments:
Post a Comment
Let us know your responses and feedback