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)



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