Skip to main content
`Ctrl`+`K`

# node_degree_xy

node_degree_xy(G, x='out', y='in', weight=None, nodes=None)

  Yields 2-tuples of `(degree, degree)` values for edges in `G`.

  This generator yields, for each edge in `G` incident to a node in `nodes`, a 2-tuple of form `(degree, degree)`. The node degrees are weighted when a `weight` attribute is specified.

  Parameters:
    G: NetworkX graph
    x: string (‘in’,’out’)

      The degree type for source node (directed graphs only).

    y: string (‘in’,’out’)

      The degree type for target node (directed graphs only).

    weight: string or None, optional (default=None)

      The edge attribute that holds the numerical value used as a weight. If None, then each edge has weight 1. The degree is the sum of the edge weights adjacent to the node.

    nodes: list or iterable (optional)

      Use only edges that are adjacency to specified nodes. The default is all nodes.

  Yields:
    (x, y): 2-tuple

      Generates 2-tuple of (degree, degree) values.

  Notes

  For undirected graphs, each edge is produced twice, once for each edge representation (u, v) and (v, u), with the exception of self-loop edges which only appear once.

  Examples

      >>> G = nx.DiGraph()
      >>> G.add_edge(1, 2)
      >>> list(nx.node_degree_xy(G, x="out", y="in"))
      [(1, 1)]
      >>> list(nx.node_degree_xy(G, x="in", y="out"))
      [(0, 0)]