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.lollipop_graph#
- lollipop_graph(num_mesh_nodes=None, num_path_nodes=None, mesh_weights=None, path_weights=None, multigraph=True)#
Generate an undirected lollipop graph where a mesh (complete) graph is connected to a path.
If neither
num_path_nodes
norpath_weights
(both described below) are specified then this is equivalent tocomplete_graph()
- Parameters:
num_mesh_nodes (int) – The number of nodes to generate the mesh graph with. Node weights will be None if this is specified. If both
num_mesh_nodes
andmesh_weights
are set this will be ignored andmesh_weights
will be used.num_path_nodes (int) – The number of nodes to generate the path with. Node weights will be None if this is specified. If both
num_path_nodes
andpath_weights
are set this will be ignored andpath_weights
will be used.mesh_weights (list) – A list of node weights for the mesh graph. If both
num_mesh_nodes
andmesh_weights
are setnum_mesh_nodes
will be ignored andmesh_weights
will be used.path_weights (list) – A list of node weights for the path. If both
num_path_nodes
andpath_weights
are setnum_path_nodes
will be ignored andpath_weights
will be used.multigraph (bool) – When set to
False
the outputPyGraph
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 lollipop graph
- Return type:
- Raises:
IndexError – If neither
num_mesh_nodes
ormesh_weights
are specified
import rustworkx.generators from rustworkx.visualization import mpl_draw graph = rustworkx.generators.lollipop_graph(4, 2) mpl_draw(graph)