PlanarEmbedding.to_undirected#
- PlanarEmbedding.to_undirected(reciprocal=False, as_view=False)#
返回有向图的无向表示。
- 参数:
- reciprocal布尔值 (可选)
如果为 True,则仅保留在原始有向图中双向都存在的边。
- as_view布尔值 (可选,默认为 False)
如果为 True,则返回原始有向图的无向视图。
- 返回值:
- GGraph
一个无向图,具有相同的名称和节点,如果 (u, v, data) 或 (v, u, data) 存在于有向图中,则包含边 (u, v, data)。如果两个方向的边都在有向图中存在且它们的边数据不同,则仅创建一个边,使用任意选择的边数据。如果需要,您必须手动检查并更正此问题。
另请参阅
Graph
,copy
,add_edge
,add_edges_from
注释
如果图中存在双向边 (u, v) 和 (v, u),则新的无向边的属性将是这些有向边属性的组合。边数据按照遇到的(任意)顺序更新。如需更精细地控制边属性,请使用 add_edge()。
这将返回边、节点和图属性的“深拷贝”,它试图完全复制所有数据和引用。
这与类似的 G=DiGraph(D) 不同,后者返回数据的浅拷贝。
有关浅拷贝和深拷贝的更多信息,请参阅 Python 的 copy 模块:https://docs.pythonlang.cn/3/library/copy.html。
警告:如果您已对 DiGraph 进行子类化以在数据结构中使用类似字典的对象,则这些更改不会转移到此方法创建的 Graph 中。
示例
>>> G = nx.path_graph(2) # or MultiGraph, etc >>> H = G.to_directed() >>> list(H.edges) [(0, 1), (1, 0)] >>> G2 = H.to_undirected() >>> list(G2.edges) [(0, 1)]