共计 653 个字符,预计需要花费 2 分钟才能阅读完成。
引子
- NetworkX github: https://github.com/networkx/n…
- 本文对 NetworkX 2.5.1 实用
Tips
-
导入包
import networkx as nx # 载入 networkx 包 import matplotlib.pyplot as plt # 用于画图 G = nx.Graph() # 无向图
-
连通重量
edges = [('A', 'B'), ('C', 'E'), ('D', 'E'), ('F', 'G'), ('F', 'H'), ('G', 'I'), ('G', 'J'), ('H', 'J'), ('H', 'L'), ('H', 'M'), ('I', 'K'), ('J', 'K'), ('L', 'K'), ('L', 'H'), ('L', 'M')] G.add_edges_from(edges) nx.draw_networkx(G) plt.show()
-
度最大的节点
>>> max(G.degree, key=lambda x: x[1]) ('H', 4)
-
节点按度降序
for tup in sorted(G.degree, key=lambda x: x[1], reverse=True): print(tup)
-
连通重量的个数
>>> nx.number_connected_components(G) 3
-
打印各连通重量的节点汇合
for iset in nx.connected_components(G): print(iset) {'B', 'A'} {'E', 'C', 'D'} {'L', 'I', 'M', 'J', 'G', 'H', 'K', 'F'}
本文出自 qbit snap
正文完