2021-05-21

这段代码展示了如何利用NumPy生成数据,并使用NetworkX库创建一个加权图。首先,通过NumPy创建一个二维矩阵并保存为文本文件。接着,读取数据,构建加权图,并使用shell布局进行节点布置。最后,用不同方式绘制图,包括显示节点标签、边权重,并保存为PNG图像。
摘要由CSDN通过智能技术生成

用nteworkx画图

import numpy as np
import networkx as nx
import pylab as plt
a=np.zeros((5,5))
a[0,1:5]=[9,2,4,7]; a[1,2:4]=[3,4]
a[2,[3,4]]=[8,4];
a[3,4]=6;print(a); np.savetxt(“pdata0_2.txt”,a)
i,j=np.nonzeros(a)
w=a[i,j]
edges=list(zip(i,j,w))
G=nx.Graph()
G.add_weighted_edges_from(edges)
key=range(5);s=[str(i+1) for i in range(5)]
s=dict(zip(key,s))
plt.rc(‘font’,size=18)
plt.subplot(121);nx.draw(G,font_weight=‘bold’,labels=s)
plt.subplot(122);pos=nx.shell_layout(G)
nx.draw_networkx(G,pos,node_size=260,labels=s)
w = nx.get_edge_attributes(G,‘weight’)
nx.draw_networkx_edge_labels(G,pos,font_size=12,edge_labels=w)
plt.savefig(“figure10_2.png”,dpi=500);plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值