Functional interface to graph methods and assorted utilities.


degree(G[, nbunch, weight]) Return a degree view of single node or of nbunch of nodes.
degree_histogram(G) Return a list of the frequency of each degree value.
density(G) Return the density of a graph.
info(G[, n]) Print short summary of information for the graph G or the node n.
create_empty_copy(G[, with_data]) Return a copy of the graph G with all of the edges removed.
is_directed(G) Return True if graph is directed.
add_star(G, nodes, **attr) Add a star to Graph G.
add_path(G, nodes, **attr) Add a path to the Graph G.
add_cycle(G, nodes, **attr) Add a cycle to the Graph G.


nodes(G) Return an iterator over the graph nodes.
number_of_nodes(G) Return the number of nodes in the graph.
all_neighbors(graph, node) Returns all of the neighbors of a node in the graph.
non_neighbors(graph, node) Returns the non-neighbors of the node in the graph.
common_neighbors(G, u, v) Return the common neighbors of two nodes in a graph.


edges(G[, nbunch]) Return an edge view of edges incident to nodes in nbunch.
number_of_edges(G) Return the number of edges in the graph.
non_edges(graph) Returns the non-existent edges in the graph.

Self loops

selfloop_edges(G[, data, keys, default]) Returns an iterator over selfloop edges.
number_of_selfloops(G) Return the number of selfloop edges.
nodes_with_selfloops(G) Returns an iterator over nodes with self loops.


set_node_attributes(G, values[, name]) Sets node attributes from a given value or dictionary of values.
get_node_attributes(G, name) Get node attributes from graph
set_edge_attributes(G, values[, name]) Sets edge attributes from a given value or dictionary of values.
get_edge_attributes(G, name) Get edge attributes from graph

Freezing graph structure

freeze(G) Modify graph to prevent further change by adding or removing nodes or edges.
is_frozen(G) Return True if graph is frozen.