closeness_vitality(G, node=None, weight=None, wiener_index=None)[source]

Returns the closeness vitality for nodes in the graph.

The closeness vitality of a node, defined in Section 3.6.2 of [1], is the change in the sum of distances between all node pairs when excluding that node.

  • G (NetworkX graph) – A strongly-connected graph.

  • weight (string) – The name of the edge attribute used as weight. This is passed directly to the wiener_index() function.

  • node (object) – If specified, only the closeness vitality for this node will be returned. Otherwise, a dictionary mapping each node to its closeness vitality will be returned.

Other Parameters

wiener_index (number) – If you have already computed the Wiener index of the graph G, you can provide that value here. Otherwise, it will be computed for you.


If node is None, this function returns a dictionary with nodes as keys and closeness vitality as the value. Otherwise, it returns only the closeness vitality for the specified node.

The closeness vitality of a node may be negative infinity if removing that node would disconnect the graph.

Return type

dictionary or float


>>> G = nx.cycle_graph(3)
>>> nx.closeness_vitality(G)
{0: 2.0, 1: 2.0, 2: 2.0}

See also




Ulrik Brandes, Thomas Erlebach (eds.). Network Analysis: Methodological Foundations. Springer, 2005. <>