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.adjacency_matrix#
- adjacency_matrix(graph, weight_fn=None, default_weight=1.0, null_value=0.0)[source]#
Return the adjacency matrix for a graph object
In the case where there are multiple edges between nodes the value in the output matrix will be the sum of the edges’ weights.
- Parameters:
graph – The graph used to generate the adjacency matrix from. Can either be a
PyGraph
orPyDiGraph
weight_fn (callable) –
A callable object (function, lambda, etc) which will be passed the edge object and expected to return a
float
. This tells rustworkx/rust how to extract a numerical weight as afloat
for edge object. Some simple examples are:adjacency_matrix(graph, weight_fn: lambda x: 1)
to return a weight of 1 for all edges. Also:
adjacency_matrix(graph, weight_fn: lambda x: float(x))
to cast the edge object as a float as the weight. If this is not specified a default value (either
default_weight
or 1) will be used for all edges.default_weight (float) – If
weight_fn
is not used this can be optionally used to specify a default weight to use for all edges.null_value (float) –
- An optional float that will treated as a null
value. This is the default value in the output matrix and it is used to indicate the absence of an edge between 2 nodes. By default this is
0.0
.
- return:
The adjacency matrix for the input dag as a numpy array
- rtype:
numpy.ndarray