#

Note

This documents the development version of NetworkX. Documentation for the current release can be found here.

#

networkx.linalg.laplacianmatrix.normalized_laplacian_matrix

normalized_laplacian_matrix(G, nodelist=None, weight='weight')[source]

Returns the normalized Laplacian matrix of G.

The normalized graph Laplacian is the matrix

\[N = D^{-1/2} L D^{-1/2}\]

where L is the graph Laplacian and D is the diagonal matrix of node degrees.

Parameters
  • G (graph) – A NetworkX graph

  • nodelist (list, optional) – The rows and columns are ordered according to the nodes in nodelist. If nodelist is None, then the ordering is produced by G.nodes().

  • weight (string or None, optional (default=’weight’)) – The edge data key used to compute each value in the matrix. If None, then each edge has weight 1.

Returns

N – The normalized Laplacian matrix of G.

Return type

Scipy sparse matrix

Notes

For MultiGraph/MultiDiGraph, the edges weights are summed. See to_numpy_array for other options.

If the Graph contains selfloops, D is defined as diag(sum(A,1)), where A is the adjacency matrix 2.

See also

laplacian_matrix(), normalized_laplacian_spectrum()

References

1

Fan Chung-Graham, Spectral Graph Theory, CBMS Regional Conference Series in Mathematics, Number 92, 1997.

2

Steve Butler, Interlacing For Weighted Graphs Using The Normalized Laplacian, Electronic Journal of Linear Algebra, Volume 16, pp. 90-98, March 2007.