并集#
- union(G, H, rename=())[source]#
合并图 G 和 H。节点名称必须是唯一的。
图之间发生名称冲突将引发异常。
提供了重命名功能以避免名称冲突。
- 参数:
- G, H图
一个 NetworkX 图
- rename可迭代对象,可选
可以通过指定元组 rename=(‘G-‘,’H-’)(例如)来更改 G 和 H 的节点名称。G 中的节点“u”将被重命名为“G-u”,H 中的节点“v”将被重命名为“H-v”。
- 返回值:
- U一个与 G 类型相同的并集图。
注意
要合并具有公共节点的图,请考虑使用 compose(G, H) 函数或 Graph.update() 方法。
disjoint_union() 与 union() 相似,不同之处在于它通过使用顺序整数重新标记节点来避免名称冲突。
边和节点属性会从 G 和 H 传播到并集图。图属性也会传播,但如果它们在 G 和 H 中都存在,则使用 H 中的值。
示例
>>> 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')]) ----
其他后端实现了此函数
graphblas : 启用 OpenMP 的稀疏线性代数后端。