Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

networkx.algorithms.centrality.subgraph_centrality_exp

subgraph_centrality_exp(G)[source]

Returns the subgraph centrality for each node of G.

Subgraph centrality of a node n is the sum of weighted closed walks of all lengths starting and ending at node n. The weights decrease with path length. Each closed walk is associated with a connected subgraph (1).

Parameters

G (graph)

Returns

nodes – Dictionary of nodes with subgraph centrality as the value.

Return type

dictionary

Raises

NetworkXError – If the graph is not undirected and simple.

See also

subgraph_centrality()

Alternative algorithm of the subgraph centrality for each node of G.

Notes

This version of the algorithm exponentiates the adjacency matrix.

The subgraph centrality of a node u in G can be found using the matrix exponential of the adjacency matrix of G 1,

\[SC(u)=(e^A)_{uu} .\]

References

1(1,2,3)

Ernesto Estrada, Juan A. Rodriguez-Velazquez, “Subgraph centrality in complex networks”, Physical Review E 71, 056103 (2005). https://arxiv.org/abs/cond-mat/0504730

Examples

(Example from 1) >>> G = nx.Graph([(1,2),(1,5),(1,8),(2,3),(2,8),(3,4),(3,6),(4,5),(4,7),(5,6),(6,7),(7,8)]) >>> sc = nx.subgraph_centrality_exp(G) >>> print([‘%s %0.2f’%(node,sc[node]) for node in sorted(sc)]) [‘1 3.90’, ‘2 3.90’, ‘3 3.64’, ‘4 3.71’, ‘5 3.64’, ‘6 3.71’, ‘7 3.64’, ‘8 3.90’]