📅  最后修改于: 2023-12-03 15:33:06.259000             🧑  作者: Mango
NetworkX 是一个用于创建、操作和研究复杂网络的 Python 库。其中一项功能是绘制图形,并为节点和边添加标签。
在开始前,需要先安装 NetworkX。可以通过 pip 安装:
pip install networkx
以下是一个简单的例子,其中使用 NetworkX 绘制无向图,并为节点和边添加标签:
import networkx as nx
import matplotlib.pyplot as plt
G = nx.Graph()
# 添加节点
G.add_node(1, label="A")
G.add_node(2, label="B")
G.add_node(3, label="C")
G.add_node(4, label="D")
# 添加边
G.add_edge(1, 2, label="Edge 1")
G.add_edge(2, 3, label="Edge 2")
G.add_edge(3, 4, label="Edge 3")
G.add_edge(4, 1, label="Edge 4")
# 绘制图形
pos = nx.circular_layout(G)
nx.draw(G, pos, with_labels=True)
# 在每个节点上添加标签
labels = nx.get_node_attributes(G, 'label')
nx.draw_networkx_labels(G, pos, labels)
# 在每条边上添加标签
labels = nx.get_edge_attributes(G, 'label')
nx.draw_networkx_edge_labels(G, pos, edge_labels=labels)
# 显示图形
plt.show()
图形如下所示:
通过 NetworkX,你可以轻松创建、操作和研究复杂的网络,并为节点和边添加标签,以方便更好的数据分析和可视化。