networkx基礎用法:新增節點、新增邊、刪除節點、刪除邊、計算度、賦權重
涉及到的方法:
正常安裝方法
pip3 install networkx
如果是pip使用者就把pip3改成pip
如果報了一堆錯看這裡↓
networkx安裝教程
新增節點和邊的多種方法以及顯示
import networkx as nx
G = nx.Graph() #建立一個空的圖形
G.add_node(1) #新增節點1
G.add_nodes_from([2, 3]) #新增邊(2,3)
print(G.nodes)# 列印出所有的節點資訊
G.add_edge(1,2) #新增邊的另一種方法(1,2)
e = (2, 3)
G.add_edge(*e) # unpack edge tuple*
G.add_edges_from([(1, 2), (1, 3)]) #新增邊的第三種方法,補全三角形對邊
G.add_node("spam") # adds node "spam"
G.add_nodes_from("spam") # adds 4 nodes: 's', 'p', 'a', 'm' 把spam拆開4個點新增進去
print(G.nodes) # 列印出所有的節點資訊
G.add_edge(3, 'm') #給3和m之間新增一個邊
#At this stage the graph G consists of 8 nodes and 3 edges, as can be seen by:
G.number_of_nodes() #計算節點數量
G.number_of_edges() #計算邊的數量
print(G.number_of_nodes()) #列印出有多少個節點
#Four basic graph properties facilitate reporting: G.nodes, G.edges, G.adj and G.degree.
list(G.nodes) #用list顯示節點列表
結果:
list只能顯示最後一個list出的東西。
list(G.edges)
list(G.adj[1])
G.degree[1]
刪去節點和邊
G.remove_node(2)
G.remove_nodes_from("spam")
list(G.nodes)
注意刪掉節點2之後,所有和2相關的邊會消失。
remove_nodes_from()會把所有括號裡形成的子節點s,p,a,m也刪去。但是生成時並不會在子母之間形成邊。
如果這麼寫是錯誤的,查了一下邊列表,居然是
太迷了。
再次執行又正常了
後來發現其實是每一個cell執行的順序被我點亂了。在jupyter裡及時已經執行完前面的但是每個cell不可以前後隨便亂點。
重頭執行一遍後:
確認是2已經被刪除,且和2相關的邊也一併被刪除
繼續↓
給邊增添value
G[1][3]['color'] = "blue"
G.edges[1, 2]['color'] = "red"
也可以在建立的時候就加好。
>>> FG = nx.Graph()
>>> FG.add_weighted_edges_from([(1, 2, 0.125), (1, 3, 0.75), (2, 4, 1.2), (3, 4, 0.375)])
>>> for n, nbrs in FG.adj.items():
for nbr, eattr in nbrs.items():
wt = eattr['weight']
if wt < 0.5: print('(%d, %d, %.3f)' % (n, nbr, wt))
效果:
相關文章
- mongodb副本集新增刪除節點MongoDB
- redis cluster節點/新增刪除操作Redis
- oracle11g_RAC新增刪除節點Oracle
- 一體機HDATA節點新增和刪除
- Hyperledger Fabric節點的動態新增和刪除
- k8s叢集刪除和新增node節點K8S
- Oracle叢集軟體管理-新增和刪除叢集節點Oracle
- 怎樣新增、刪除、移動、複製、建立、查詢節點
- 【RAC】Oracle10g rac新增刪除節點命令參考Oracle
- XML DOM 刪除節點概述XML
- onnx 增刪改查,修改節點,刪除節點,修改input,output
- Linux基礎命令—新增/刪除組Linux
- DOM節點刪除方法小結
- 牛客(刪除連結串列中重複節點)
- JZ18刪除表的節點
- js中dom節點刪除remove方法JSREM
- 點選新增或者刪除表格行詳解
- JavaScript刪除元素節點程式碼例項JavaScript
- JZ76 刪除連結串列中重複的節點
- [Kubernetes]node節點pod無法啟動/節點刪除網路重置
- 新增、刪除PPA源
- Linux基礎命令---新增組groupadd、刪除組groupdelLinux
- 工作293:調節刪除順序刪除
- leetcode----刪除連結串列中的節點LeetCode
- 二叉搜尋樹如何刪除節點
- 劍指offer-----刪除連結串列中的重複節點
- jQuery 新增和刪除classjQuery
- 紅黑樹新增刪除
- 11.2.0.4 RAC生產環境刪除故障節點與增加新服務節點
- 新增節點教程
- 新增Jenkins節點Jenkins
- KubeSphere 新增節點
- 陣列的方法-新增刪除陣列
- class屬性的新增刪除
- 新增cookie、刪除cookie、清除cookieCookie
- 二分搜尋樹系列之[ 節點刪除 (remove) ]REM
- 二分搜尋樹系列之「 節點刪除 (remove) 」REM
- 13. O(1)時間刪除連結串列節點