當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python NetworkX MultiDiGraph.to_undirected用法及代碼示例

本文簡要介紹 networkx.MultiDiGraph.to_undirected 的用法。

用法:

MultiDiGraph.to_undirected(reciprocal=False, as_view=False)

返回有向圖的無向表示。

參數

reciprocal布爾(可選)

如果為 True,則僅保留原始有向圖中出現在兩個方向上的邊。

as_view布爾(可選,默認=假)

如果 True 返回原始有向圖的無向視圖。

返回

GMultiGraph

如果 (u, v, data) 或 (v, u, data) 在有向圖中,則具有相同名稱和節點以及邊 (u, v, data) 的無向圖。如果兩條邊都存在於有向圖中並且它們的邊數據不同,則僅創建一條邊,並且可以任意選擇要使用的邊數據。如果需要,您必須手動檢查並更正。

注意

這將返回嘗試完全複製所有數據和引用的邊、節點和圖形屬性的“deepcopy”。

這與返回數據的淺拷貝的類似 D=MultiDiGraph(G) 形成對比。

有關淺拷貝和深拷貝的更多信息,請參閱 Python 拷貝模塊 https://docs.python.org/3/library/copy.html

警告:如果您已將MultiDiGraph 子類化以在數據結構中使用dict-like 對象,則這些更改不會轉移到此方法創建的MultiGraph。

例子

>>> 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)]

相關用法


注:本文由純淨天空篩選整理自networkx.org大神的英文原創作品 networkx.MultiDiGraph.to_undirected。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。