load_data = sio.loadmat(load_path)

     #阈值处理
mat=np.array(load_data['R'])
mat[mat<0]=0
mat[mat<0.45]=0 #写入txt文件
# np.savetxt(thr_path, mat); #计算degree
g = nx.Graph()
for i in range(len(mat)):
for j in range(len(mat)):
if(mat[i,j]>0): #删除边的权重小于等于0的边
g.add_edge(i, j,weight=mat[i,j]) # nx.draw(g)
# nx.draw(g,with_labels=True) # 将标号标出来
# plt.show() # 按权重划分为重权值得边和轻权值的边
elarge = [(u, v) for (u, v, d) in g.edges(data=True) if d['weight'] > 0.5]
esmall = [(u, v) for (u, v, d) in g.edges(data=True) if d['weight'] <= 0.5]
# 节点位置
pos = nx.spring_layout(g) # positions for all nodes
# 首先画出节点位置
# nodes
nx.draw_networkx_nodes(g, pos, node_color='b',node_size=300,alpha=0.4)
# 根据权重,实线为权值大的边,虚线为权值小的边
# edges
nx.draw_networkx_edges(g, pos, edgelist=elarge,
width=3)
nx.draw_networkx_edges(g, pos, edgelist=esmall,
width=1, alpha=0.5, edge_color='g', style='dashed') # labels标签定义
nx.draw_networkx_labels(g, pos, font_size=13, font_family='sans-serif') plt.axis('off')
plt.savefig("weighted_graph.png") # save as png
plt.show()

Result:

局部放大:

NetworkX-根据权重画图的更多相关文章

  1. 谁动了我的特征?——sklearn特征转换行为全记录

    目录 1 为什么要记录特征转换行为?2 有哪些特征转换的方式?3 特征转换的组合4 sklearn源码分析 4.1 一对一映射 4.2 一对多映射 4.3 多对多映射5 实践6 总结7 参考资料 1 ...

  2. python网络画图——networkX

    networkX tutorial 绘制基本网络图 用matplotlib绘制网络图 基本流程: 1. 导入networkx,matplotlib包 2. 建立网络 3. 绘制网络 nx.draw() ...

  3. python—networkx:依据图的权重绘图

    首先输入边和边的权重,随后画出节点位置.依据权重大小划分实边和虚边 #coding:utf-8 #!/usr/bin/env python """ An example ...

  4. Python3画图系列——NetworkX初探

    NetworkX 概述 NetworkX 主要用于创造.操作复杂网络,以及学习复杂网络的结构.动力学及其功能.用于分析网络结构,建立网络模型,设计新的网络算法,绘制网络等等.安装networkx看以参 ...

  5. NetworkX

    常用网站: 官方文档 Github (latest development) NetworkX官方介绍: ======== NetworkX (NX) is a Python package for ...

  6. python3 networkx

    一.networkx 1.用于图论和复杂网络 2.官网:http://networkx.github.io/ 3.networkx常常结合numpy等数据处理相关的库一起使用,通过matplot来可视 ...

  7. 网络分析之networkx(转载)

    图的类型 Graph类是无向图的基类,无向图能有自己的属性或参数,不包含重边,允许有回路,节点可以是任何hash的python对象,节点和边可以保存key/value属性对.该类的构造函数为Graph ...

  8. python复杂网络分析库NetworkX

    NetworkX是一个用Python语言开发的图论与复杂网络建模工具,内置了常用的图与复杂网络分析算法,可以方便的进行复杂网络数据分析.仿真建模等工作.networkx支持创建简单无向图.有向图和多重 ...

  9. Python科学画图小结

    Python画图主要用到matplotlib这个库.具体来说是pylab和pyplot这两个子库.这两个库可以满足基本的画图需求,而条形图,散点图等特殊图,下面再单独具体介绍. 首先给出pylab神器 ...

随机推荐

  1. javascript动画函数封装(升级版)

    //把 任意对象 的 任意数值属性 改变为 任意的目标值 function animate(obj, json, fn) { clearInterval(obj.timer); obj.timer = ...

  2. 一.Windows I/O模型之选择(select)模型

    1.选择(select)模型:选择模型:通过一个fd_set集合管理套接字,在满足套接字需求后,通知套接字.让套接字进行工作.避免套接字进入阻塞模式,进行无谓的等待.选择模型的核心的FD_SET集合和 ...

  3. 路飞学城Python-Day48

    49-清除浮动1:给父盒子设置高度 给父盒子设置高度,这种方式不灵活,公司的产品修改的时候,要求父盒子高度变大, 不可能去手动修改 尽量不要给父元素去修改高度,不建议这样的方式 <!DOCTYP ...

  4. 如何设置,获取,删除cookie?

    cookie : 存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来像访问者电脑上存储数据 1.不同的浏览器存放的cookie位置不一样,也是不能通用的 2.cookie的存储 ...

  5. Java简述

    Java的特点(11个关键术语)from<Java核心技术I> 1) 简单性 2)  面向对象 3)  分布式 Java有一个丰富的例程库,用于处理像HTTP和FTP之类的TCP/IP协议 ...

  6. 洛谷4623 [COCI2012-2013#6] BUREK

    题目描述 给定N个三角形,和M条直线,直线要么平行于X轴,要么平行于Y轴,问这M条直线 分别经过多少个三角形内部 (注意是内部即分开的两个多边形的面积均大于零). 输入输出格式 输入格式: 第一行一个 ...

  7. BZOJ 4016 [FJOI2014]最短路径树问题 (贪心+点分治)

    题目大意:略 传送门 硬是把两个题拼到了一起= = $dijkstra$搜出单源最短路,然后$dfs$建树,如果$dis_{v}=dis_{u}+e.val$,说明这条边在最短路图内,然后像$NOIP ...

  8. Python中的itertools.product

    例子1:import itertoolsa = itertools.product([1,2,3],[100,200])print(a)for item in itertools.product([1 ...

  9. Could not find result map java.util.HashMap

    Could not find result map java.util.HashMap 找不到结果图java.util.HashMap MyBatis 找不到返回的 'resultMap'!把resu ...

  10. 【BZOJ 1221】 [HNOI2001] 软件开发

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] /* 设一个超级源点S和超级汇点T S和2*i-1各连一条容量为ni的边. 花费为0 表示每天都会产生ni条要洗的毛巾 S和2*i各 ...