Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

networkx.algorithms.boundary.edge_boundary

edge_boundary(G, nbunch1, nbunch2=None, data=False, keys=False, default=None)[source]

Returns the edge boundary of nbunch1.

The edge boundary of a set S with respect to a set T is the set of edges (u, v) such that u is in S and v is in T. If T is not specified, it is assumed to be the set of all nodes not in S.

Parameters:
  • G (NetworkX graph)
  • nbunch1 (iterable) – Iterable of nodes in the graph representing the set of nodes whose edge boundary will be returned. (This is the set S from the definition above.)
  • nbunch2 (iterable) – Iterable of nodes representing the target (or “exterior”) set of nodes. (This is the set T from the definition above.) If not specified, this is assumed to be the set of all nodes in G not in nbunch1.
  • keys (bool) – This parameter has the same meaning as in MultiGraph.edges().
  • data (bool or object) – This parameter has the same meaning as in MultiGraph.edges().
  • default (object) – This parameter has the same meaning as in MultiGraph.edges().
Returns:

An iterator over the edges in the boundary of nbunch1 with respect to nbunch2. If keys, data, or default are specified and G is a multigraph, then edges are returned with keys and/or data, as in MultiGraph.edges().

Return type:

iterator

Notes

Any element of nbunch that is not in the graph G will be ignored.

nbunch1 and nbunch2 are usually meant to be disjoint, but in the interest of speed and generality, that is not required here.