graph.py¶
Utilities for creating and interacting with graph objects.
author: Stefan McCabe (stefanmccabe at gmail dot com)
Submitted as part of the 2019 NetSI Collabathon.

netrd.utilities.graph.
create_graph
(A, create_using=None, remove_self_loops=True)[source]¶ Flexibly creating a networkx graph from a numpy array.
 Parameters
 A (np.ndarray)
A numpy array.
 create_using (nx.Graph or None)
Create the graph using a specific networkx graph. Can be used for forcing an asymmetric matrix to create an undirected graph, for example.
 remove_self_loops (bool)
If True, remove the diagonal of the matrix before creating the graph object.
 Returns
 G
A graph, typically a nx.Graph or nx.DiGraph.

netrd.utilities.graph.
ensure_undirected
(G)[source]¶ Ensure the graph G is undirected.
If it is not, coerce it to undirected and warn the user.
 Parameters
 G (networkx graph)
The graph to be checked
 Returns
 G (nx.Graph)
Undirected version of the input graph

netrd.utilities.graph.
ensure_unweighted
(G)[source]¶ Ensure the graph G is unweighted.
If it is not, coerce it to unweighted and warn the user.
 Parameters
 G (networkx graph)
The graph to be checked
 Returns
 G (nx.Graph)
Unweighted version of the input graph