networkx.convert_matrix.from_numpy_array
的用法。用法:
from_numpy_array(A, parallel_edges=False, create_using=None)
從 2D NumPy 數組返回圖形。
2D NumPy 數組被解釋為圖形的鄰接矩陣。
- A:一個 2D numpy.ndarray
圖的鄰接矩陣表示
- parallel_edges:布爾值
如果這是真的,
create_using
是一個多重圖,而A
是一個整數數組,那麽數組中的條目(i, j)
被解釋為連接圖中頂點i
和j
的平行邊的數量。如果為 False,則數組中的條目被解釋為連接頂點的單條邊的權重。- create_using:NetworkX 圖形構造函數,可選(默認=nx.Graph)
要創建的圖表類型。如果是圖形實例,則在填充之前清除。
參數:
注意:
對於有向圖,明確提及create_using=nx.DiGraph,A 的條目 i,j 對應於從 i 到 j 的邊。
如果
create_using
是networkx.MultiGraph
或networkx.MultiDiGraph
,parallel_edges
是 True ,並且A
的條目是類型int
,那麽這個函數返回一個多重圖(與create_using
的類型相同)平行邊。如果
create_using
表示無向多重圖,則僅將數組A
的上三角形指示的邊添加到圖中。如果 NumPy 數組的每個數組條目都有一個數據類型,它將被轉換為適當的 Python 數據類型。
如果 NumPy 數組具有用戶指定的複合數據類型,則數據字段的名稱將用作生成的 NetworkX 圖形中的屬性鍵。
例子:
邊上的簡單整數權重:
>>> import numpy as np >>> A = np.array([[1, 1], [2, 1]]) >>> G = nx.from_numpy_array(A) >>> G.edges(data=True) EdgeDataView([(0, 0, {'weight': 1}), (0, 1, {'weight': 2}), (1, 1, {'weight': 1})])
如果
create_using
表示多重圖並且數組隻有整數條目並且parallel_edges
為False,則條目將被視為連接節點的邊的權重(不創建平行邊):>>> A = np.array([[1, 1], [1, 2]]) >>> G = nx.from_numpy_array(A, create_using=nx.MultiGraph) >>> G[1][1] AtlasView({0: {'weight': 2}})
如果
create_using
表示多重圖並且數組隻有整數條目並且parallel_edges
為True,則條目將被視為連接這兩個頂點的平行邊的數量:>>> A = np.array([[1, 1], [1, 2]]) >>> temp = nx.MultiGraph() >>> G = nx.from_numpy_array(A, parallel_edges=True, create_using=temp) >>> G[1][1] AtlasView({0: {'weight': 1}, 1: {'weight': 1}})
用戶定義的邊複合數據類型:
>>> dt = [("weight", float), ("cost", int)] >>> A = np.array([[(1.0, 2)]], dtype=dt) >>> G = nx.from_numpy_array(A) >>> G.edges() EdgeView([(0, 0)]) >>> G[0][0]["cost"] 2 >>> G[0][0]["weight"] 1.0
相關用法
- Python NetworkX from_numpy_matrix用法及代碼示例
- Python NetworkX from_nested_tuple用法及代碼示例
- Python NetworkX from_dict_of_dicts用法及代碼示例
- Python NetworkX from_scipy_sparse_array用法及代碼示例
- Python NetworkX from_pandas_adjacency用法及代碼示例
- Python NetworkX from_scipy_sparse_matrix用法及代碼示例
- Python NetworkX from_dict_of_lists用法及代碼示例
- Python NetworkX from_pydot用法及代碼示例
- Python NetworkX from_edgelist用法及代碼示例
- Python NetworkX from_graph6_bytes用法及代碼示例
- Python NetworkX from_prufer_sequence用法及代碼示例
- Python NetworkX from_pandas_edgelist用法及代碼示例
- Python NetworkX from_sparse6_bytes用法及代碼示例
- Python NetworkX from_agraph用法及代碼示例
- Python NetworkX freeze用法及代碼示例
- Python NetworkX full_join用法及代碼示例
- Python NetworkX find_induced_nodes用法及代碼示例
- Python NetworkX floyd_warshall_predecessor_and_distance用法及代碼示例
- Python NetworkX find_cycle用法及代碼示例
- Python NetworkX find_threshold_graph用法及代碼示例
- Python NetworkX negative_edge_cycle用法及代碼示例
- Python NetworkX voronoi_cells用法及代碼示例
- Python NetworkX numerical_edge_match用法及代碼示例
- Python NetworkX inverse_line_graph用法及代碼示例
- Python NetworkX LFR_benchmark_graph用法及代碼示例
注:本文由純淨天空篩選整理自networkx.org大神的英文原創作品 networkx.convert_matrix.from_numpy_array。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。