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


connected_caveman_graph(l, k)[source]

Returns a connected caveman graph of l cliques of size k.

The connected caveman graph is formed by creating n cliques of size k, then a single edge in each clique is rewired to a node in an adjacent clique.

  • l (int) – number of cliques
  • k (int) – size of cliques

G – connected caveman graph

Return type:

NetworkX Graph


This returns an undirected graph, it can be converted to a directed graph using nx.to_directed(), or a multigraph using nx.MultiGraph(nx.caveman_graph(l, k)). Only the undirected version is described in [1] and it is unclear which of the directed generalizations is most useful.


>>> G = nx.connected_caveman_graph(3, 3)


[1]Watts, D. J. ‘Networks, Dynamics, and the Small-World Phenomenon.’ Amer. J. Soc. 105, 493-527, 1999.