Python networkx中獲取圖的鄰接矩陣方式
networkx如何獲取圖的鄰接矩陣
需要調(diào)取networkx中g(shù)raph實例的鄰接矩陣,搜“network 鄰接矩陣”沒有迅速找到解決方案。我寫一個吧。
錯誤獲取
networkx中有個adjacency_matrix()函數(shù),得到的鄰接表看形狀雖然是N*N,但是打印出來會發(fā)現(xiàn)是這個格式:
(0, 1) 1
(0, 30) 1
(0, 33) 1
(0, 99) 1
第一列是源頭和終止節(jié)點,第二列是權(quán)重。
但是,如果你下列語句遍歷,是會報錯的:ValueError: not enough values to unpack (expected 2, got 1)
# 錯誤示范 for (x,y), w in nx.adjacency_matrix(G): ? ? print(x, y, w)
正確獲取
import networkx as nx import numpy as np A=np.array(nx.adjacency_matrix(G).todense())
轉(zhuǎn)換為numpy矩陣是因為原始的格式不支持A[i][j]形式的索引。
成功得到鄰接矩陣,解決!
[[0 0 0 ... 0 0 1]
[0 0 1 ... 0 0 0]
[0 1 0 ... 0 0 0]
...
[0 0 0 ... 0 0 0]
[0 0 0 ... 0 0 1]
[1 0 0 ... 0 1 0]]
鄰接矩陣 轉(zhuǎn) 網(wǎng)絡(luò)圖
逛知乎看到的,老是忘記,記一下:
import networkx as nx graph = nx.from_numpy_matrix(Matrix) ?
networkx自帶函數(shù)將鄰接矩陣轉(zhuǎn)為網(wǎng)絡(luò)圖
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
基于Python實現(xiàn)虛假評論檢測可視化系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何基于Python實現(xiàn)一個簡單的虛假評論檢測可視化系統(tǒng),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-04-04
Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實例
今天小編就為大家分享一篇Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01
Python數(shù)據(jù)類型之String字符串實例詳解
這篇文章主要介紹了Python數(shù)據(jù)類型之String字符串,結(jié)合實例形式詳細(xì)講解了Python字符串的概念、定義、連接、格式化、轉(zhuǎn)換、查找、截取、判斷等常見操作技巧,需要的朋友可以參考下2019-05-05
Python中operator模塊的操作符使用示例總結(jié)
operator模塊中包含了Python的各種內(nèi)置操作符,諸如邏輯、比較、計算等,這里我們針對一些常用的操作符來作一個Python中operator模塊的操作符使用示例總結(jié):2016-06-06

