NetworkX 是一个用于创建、操作和研究复杂网络的结构、动态和功能的 Python 库。它提供了丰富的图论算法和数据结构,适用于各种网络分析任务。
在 NetworkX 中,节点和边的显示可以通过多种方式进行定制,包括节点大小、颜色、形状等。
在 NetworkX 中,节点外部显示大小可变的圆,通常是为了表示节点的某种属性(如度数、中心性等)。
以下是一个示例代码,展示如何在 NetworkX 中实现节点外部显示大小可变的圆:
import networkx as nx
import matplotlib.pyplot as plt
# 创建一个示例图
G = nx.Graph()
G.add_edges_from([(1, 2), (2, 3), (3, 4), (4, 1), (1, 3)])
# 计算每个节点的度数
degree_dict = dict(G.degree())
# 根据度数设置节点大小
node_sizes = [degree_dict[node] * 100 for node in G.nodes()]
# 绘制图
pos = nx.spring_layout(G) # 使用 spring 布局
nx.draw(G, pos, node_size=node_sizes, with_labels=True)
# 显示图形
plt.show()
nx.Graph()
创建一个无向图,并添加边。G.degree()
计算每个节点的度数,并存储在 degree_dict
中。node_sizes
列表中。nx.draw()
函数绘制图,并通过 node_size
参数设置节点的大小。plt.show()
显示图形。通过这种方式,你可以根据节点的属性(如度数)来动态调整节点的大小,从而更直观地展示网络中的节点重要性。
领取专属 10元无门槛券
手把手带您无忧上云