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


dispersion(G, u=None, v=None, normalized=True, alpha=1.0, b=0.0, c=0.0)[source]

Calculate dispersion between \(u\) and \(v\) in \(G\).

A link between two actors (\(u\) and \(v\)) has a high dispersion when their mutual ties (\(s\) and \(t\)) are not well connected with each other.


G : graph

A NetworkX graph.

u : node, optional

The source for the dispersion score (e.g. ego node of the network).

v : node, optional

The target of the dispersion score if specified.

normalized : bool

If True (default) normalize by the embededness of the nodes (u and v).


nodes : dictionary

If u (v) is specified, returns a dictionary of nodes with dispersion score for all “target” (“source”) nodes. If neither u nor v is specified, returns a dictionary of dictionaries for all nodes ‘u’ in the graph with a dispersion score for each node ‘v’.


This implementation follows Lars Backstrom and Jon Kleinberg [R187]. Typical usage would be to run dispersion on the ego network \(G_u\) if \(u\) were specified. Running dispersion() with neither \(u\) nor \(v\) specified can take some time to complete.


[R187](1, 2) Romantic Partnerships and the Dispersion of Social Ties: A Network Analysis of Relationship Status on Facebook. Lars Backstrom, Jon Kleinberg. http://arxiv.org/pdf/1310.6753v1.pdf