Note

This is the documentation for the current state of the development branch of rustworkx. The documentation or APIs here can change prior to being released.

rustworkx.generators.directed_cycle_graph#

directed_cycle_graph(num_nodes=None, weights=None, bidirectional=False, multigraph=True)#

Generate a directed cycle graph

Parameters:
  • num_nodes (int) – The number of nodes to generate the graph with. Node weights will be None if this is specified. If both num_nodes and weights are set this will be ignored and weights will be used.

  • weights (list) – A list of node weights, the first element in the list will be the center node of the cycle graph. If both num_nodes and weights are set this will be ignored and weights will be used.

  • bidirectional (bool) – Adds edges in both directions between two nodes if set to True. Default value is False

  • multigraph (bool) – When set to False the output PyDiGraph object will not be not be a multigraph and won’t allow parallel edges to be added. Instead calls which would create a parallel edge will update the existing edge.

Returns:

The generated cycle graph

Return type:

PyDiGraph

Raises:

IndexError – If neither num_nodes or weights are specified

import rustworkx.generators
from rustworkx.visualization import mpl_draw

graph = rustworkx.generators.directed_cycle_graph(5)
mpl_draw(graph)
../_images/rustworkx.generators.directed_cycle_graph_0_0.png