Skip to main content
`Ctrl`+`K`

# PlanarEmbedding.add_weighted_edges_from

PlanarEmbedding.add_weighted_edges_from(ebunch_to_add, weight='weight', **attr)

  Add weighted edges in `ebunch_to_add` with specified weight attr

  Parameters:
    ebunch_to_add container of edges

      Each edge given in the list or container will be added to the graph. The edges must be given as 3-tuples (u, v, w) where w is a number.

    weight string, optional (default= ‘weight’)

      The attribute name for the edge weights to be added.

    attr keyword arguments, optional (default= no attributes)

      Edge attributes to add/update for all edges.

  See also

  `add_edge`

    add a single edge

  `add_edges_from`

    add multiple edges

  Notes

  Adding the same edge twice for Graph/DiGraph simply updates the edge data. For MultiGraph/MultiDiGraph, duplicate edges are stored.

  When adding edges from an iterator over the graph you are changing, a `RuntimeError` can be raised with message: `RuntimeError: dictionary changed size during iteration`. This happens when the graph’s underlying dictionary is modified during iteration. To avoid this error, evaluate the iterator into a separate object, e.g. by using `list(iterator_of_edges)`, and pass this object to `G.add_weighted_edges_from`.

  Examples

      >>> G = nx.Graph()  # or DiGraph, MultiGraph, MultiDiGraph, etc
      >>> G.add_weighted_edges_from([(0, 1, 3.0), (1, 2, 7.5)])

  Evaluate an iterator over edges before passing it

      >>> G = nx.Graph([(1, 2), (2, 3), (3, 4)])
      >>> weight = 0.1
      >>> # Grow graph by one new node, adding edges to all existing nodes.
      >>> # wrong way - will raise RuntimeError
      >>> # G.add_weighted_edges_from(((5, n, weight) for n in G.nodes))
      >>> # correct way - note that there will be no self-edge for node 5
      >>> G.add_weighted_edges_from(list((5, n, weight) for n in G.nodes))