python networkx 根据图的权重画图实现


Posted in Python onJuly 10, 2019

首先输入边和边的权重,随后画出节点位置,根据权重大小划分实边和虚边

python networkx 根据图的权重画图实现

#coding:utf-8
#!/usr/bin/env python
"""
An example using Graph as a weighted network.
"""
__author__ = """Aric Hagberg (hagberg@lanl.gov)"""
try:
  import matplotlib.pyplot as plt
except:
  raise
 
import networkx as nx
 
G=nx.Graph()
#添加带权边
G.add_edge('a','b',weight=0.6)
G.add_edge('a','c',weight=0.2)
G.add_edge('c','d',weight=0.1)
G.add_edge('c','e',weight=0.7)
G.add_edge('c','f',weight=0.9)
G.add_edge('a','d',weight=0.3)
#按权重划分为重权值得边和轻权值的边
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_size=700)
#根据权重,实线为权值大的边,虚线为权值小的边
# edges
nx.draw_networkx_edges(G,pos,edgelist=elarge,
          width=6)
nx.draw_networkx_edges(G,pos,edgelist=esmall,
          width=6,alpha=0.5,edge_color='b',style='dashed')
 
# labels标签定义
nx.draw_networkx_labels(G,pos,font_size=20,font_family='sans-serif')
 
plt.axis('off')
plt.savefig("weighted_graph.png") # save as png
plt.show() # display

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 对象中的数据类型
May 13 Python
Python元组操作实例分析【创建、赋值、更新、删除等】
Jul 24 Python
Python使用pickle模块实现序列化功能示例
Jul 13 Python
python实现旋转和水平翻转的方法
Oct 25 Python
Python中类的创建和实例化操作示例
Feb 27 Python
python+pyqt5编写md5生成器
Mar 18 Python
在pycharm下设置自己的个性模版方法
Jul 15 Python
Python内存映射文件读写方式
Apr 24 Python
python 操作mysql数据中fetchone()和fetchall()方式
May 15 Python
python 监控服务器是否有人远程登录(详细思路+代码)
Dec 18 Python
Python用SSH连接到网络设备
Feb 18 Python
Python 中数组和数字相乘时的注意事项说明
May 10 Python
python networkx 包绘制复杂网络关系图的实现
Jul 10 #Python
python卸载后再次安装遇到的问题解决
Jul 10 #Python
Python求离散序列导数的示例
Jul 10 #Python
Python Matplotlib 基于networkx画关系网络图
Jul 10 #Python
我们为什么要减少Python中循环的使用
Jul 10 #Python
详解Python中的各种转义符\n\r\t
Jul 10 #Python
使用python画社交网络图实例代码
Jul 10 #Python
You might like
需要使用php模板的朋友必看的很多个顶级PHP模板引擎比较分析
2008/05/26 PHP
服务器web工具 php环境下
2010/12/29 PHP
PHP中的函数嵌套层数限制分析
2011/06/13 PHP
PHP面向对象精要总结
2014/11/07 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
一个挺有意思的Javascript小问题说明
2011/09/26 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
js截取小数点后几位的写法
2013/11/14 Javascript
在Iframe中获取父窗口中表单的值(示例代码)
2013/11/22 Javascript
JavaScript按位运算符的应用简析
2014/02/04 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
2014/06/30 Javascript
jquery ui bootstrap 实现自定义风格
2014/11/14 Javascript
快速获取/设置iframe内对象元素的几种js实现方法
2016/05/20 Javascript
详解Angular4中路由Router类的跳转navigate
2017/06/09 Javascript
React进阶学习之组件的解耦之道
2017/08/07 Javascript
jquery实现限制textarea输入字数的方法
2017/09/06 jQuery
bootstrap Table服务端处理分页(后台是.net)
2017/10/19 Javascript
vue select组件的使用与禁用实现代码
2018/04/10 Javascript
详解JavaScript添加给定的标签选项
2018/09/17 Javascript
详解Vue.js自定义tipOnce指令用法实例
2018/12/19 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
2019/01/17 Javascript
JS实现提示效果弹出及延迟隐藏的功能
2019/08/26 Javascript
[04:45]DOTA2上海特级锦标赛主赛事第四日RECAP
2016/03/06 DOTA
python实现从ftp服务器下载文件的方法
2015/04/30 Python
利用Python查看目录中的文件示例详解
2017/08/28 Python
Python3 XML 获取雅虎天气的实现方法
2018/02/01 Python
Python unittest单元测试框架总结
2018/09/08 Python
python单例模式的多种实现方法
2019/07/26 Python
实习鉴定范文
2013/12/19 职场文书
商学院大学生求职的自我评价
2014/03/12 职场文书
房屋买卖协议书
2014/04/10 职场文书
运动会加油稿100字
2014/09/19 职场文书
乡镇镇长个人整改措施
2014/10/01 职场文书
2015年世界粮食日演讲稿
2015/03/20 职场文书
position:sticky 粘性定位的几种巧妙应用详解
2021/04/24 HTML / CSS
html+css实现赛博朋克风格按钮
2021/05/26 HTML / CSS