本文簡要介紹
networkx.MultiGraph.add_edge
的用法。用法:
MultiGraph.add_edge(u_for_edge, v_for_edge, key=None, **attr)
在 u 和 v 之間添加一條邊。
如果節點 u 和 v 不在圖中,它們將被自動添加。
可以使用關鍵字或直接訪問邊的屬性字典來指定邊屬性。請參閱下麵的示例。
- u_for_edge, v_for_edge:節點
例如,節點可以是字符串或數字。節點必須是可散列的(而不是無)Python 對象。
- key:可散列標識符,可選(默認=未使用的最小整數)
用於區分一對節點之間的多重邊。
- attr:關鍵字參數,可選
可以使用關鍵字參數分配邊數據(或標簽或對象)。
- 分配給邊的邊鍵。
參數:
返回:
注意:
要替換/更新邊數據,請使用可選的 key 參數來標識唯一邊。否則將創建一個新邊。
NetworkX 為加權圖設計的算法不能直接使用多重圖,因為不清楚如何處理多邊權重。使用邊屬性‘weight’ 轉換為圖形以啟用加權圖形算法。
默認 key 是使用
new_edge_key()
方法生成的。可以通過繼承基類並提供自定義new_edge_key()
方法來覆蓋此方法。例子:
以下都將邊 e=(1, 2) 添加到圖 G:
>>> G = nx.MultiGraph() >>> e = (1, 2) >>> ekey = G.add_edge(1, 2) # explicit two-node form >>> G.add_edge(*e) # single edge as tuple of two nodes 1 >>> G.add_edges_from([(1, 2)]) # add edges from iterable container [2]
使用關鍵字將數據與邊關聯:
>>> ekey = G.add_edge(1, 2, weight=3) >>> ekey = G.add_edge(1, 2, key=0, weight=4) # update data for key=0 >>> ekey = G.add_edge(1, 3, weight=7, capacity=15, length=342.7)
對於非字符串屬性鍵,使用下標表示法。
>>> ekey = G.add_edge(1, 2) >>> G[1][2][0].update({0: 5}) >>> G.edges[1, 2, 0].update({0: 5})
相關用法
- Python NetworkX MultiGraph.add_edges_from用法及代碼示例
- Python NetworkX MultiGraph.add_weighted_edges_from用法及代碼示例
- Python NetworkX MultiGraph.add_node用法及代碼示例
- Python NetworkX MultiGraph.add_nodes_from用法及代碼示例
- Python NetworkX MultiGraph.adjacency用法及代碼示例
- Python NetworkX MultiGraph.size用法及代碼示例
- Python NetworkX MultiGraph.clear用法及代碼示例
- Python NetworkX MultiGraph.has_edge用法及代碼示例
- Python NetworkX MultiGraph.neighbors用法及代碼示例
- Python NetworkX MultiGraph.remove_node用法及代碼示例
- Python NetworkX MultiGraph.copy用法及代碼示例
- Python NetworkX MultiGraph.number_of_edges用法及代碼示例
- Python NetworkX MultiGraph.__contains__用法及代碼示例
- Python NetworkX MultiGraph.remove_nodes_from用法及代碼示例
- Python NetworkX MultiGraph.has_node用法及代碼示例
- Python NetworkX MultiGraph.edge_subgraph用法及代碼示例
- Python NetworkX MultiGraph.__len__用法及代碼示例
- Python NetworkX MultiGraph.nodes用法及代碼示例
- Python NetworkX MultiGraph.to_undirected用法及代碼示例
- Python NetworkX MultiGraph.remove_edges_from用法及代碼示例
- Python NetworkX MultiGraph.order用法及代碼示例
- Python NetworkX MultiGraph.number_of_nodes用法及代碼示例
- Python NetworkX MultiGraph.degree用法及代碼示例
- Python NetworkX MultiGraph.__iter__用法及代碼示例
- Python NetworkX MultiGraph.update用法及代碼示例
注:本文由純淨天空篩選整理自networkx.org大神的英文原創作品 networkx.MultiGraph.add_edge。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。