6-7和 7-6选取最大的作为权重
运行效果
首先的你得有csv文件:
长这样:
第一列对应起始,第二列对应终止,第三列对应权重
代码
# -*- coding:utf-8 -*-
import networkx as nx
import matplotlib.pyplot as plt
# 读取 CSV 文件
G = nx.read_weighted_edgelist('bbb.csv', delimiter=',', create_using=nx.DiGraph())
# 使用 Kamada-Kawai 布局绘制图形
pos = nx.kamada_kawai_layout(G)
# 获取节点的度数
node_sizes = [d * 100 for _, d in G.degree()]
nx.draw(G, pos, with_labels=True, font_weight='bold', node_size=node_sizes, node_color='lightblue')
# 设置边权
edge_labels = nx.get_edge_attributes(G, 'weight')
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)
# 显示图形
plt.show()
plt.savefig('chen.png')