union#

union(G, H, rename=())[source]#

合并图 G 和 H。节点的名称必须是唯一的。

如果图之间存在名称冲突,将引发异常。

提供了一个重命名功能以避免名称冲突。

Parameters:
G, Hgraph

一个 NetworkX 图

renameiterable, 可选

可以通过指定元组 rename=(‘G-‘,’H-‘)(例如)来更改 G 和 H 的节点名称。G 中的节点 “u” 将被重命名为 “G-u”,H 中的节点 “v” 将被重命名为 “H-v”。

Returns:
U一个与 G 类型相同的联合图。

Notes

要合并具有公共节点的图,请考虑使用 compose(G, H) 或方法 Graph.update()。

disjoint_union() 类似于 union(),但它通过将节点重命名为连续整数来避免名称冲突。

边和节点属性从 G 和 H 传播到联合图。图属性也会传播,但如果它们同时存在于 G 和 H 中,则使用 H 中的值。

Examples

>>> G = nx.Graph([(0, 1), (0, 2), (1, 2)])
>>> H = nx.Graph([(0, 1), (0, 3), (1, 3), (1, 2)])
>>> U = nx.union(G, H, rename=("G", "H"))
>>> U.nodes
NodeView(('G0', 'G1', 'G2', 'H0', 'H1', 'H3', 'H2'))
>>> U.edges
EdgeView([('G0', 'G1'), ('G0', 'G2'), ('G1', 'G2'), ('H0', 'H1'), ('H0', 'H3'), ('H1', 'H3'), ('H1', 'H2')])

Additional backends implement this function

graphblas : OpenMP-enabled sparse linear algebra backend.