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开发的nosql数据库CodernityDB介绍和使用实例
Oct 23 Python
python实现远程通过网络邮件控制计算机重启或关机
Feb 22 Python
通过shell+python实现企业微信预警
Mar 07 Python
python从入门到精通 windows安装python图文教程
May 18 Python
Python语言进阶知识点总结
May 28 Python
django-crontab 定时执行任务方法的实现
Sep 06 Python
复化梯形求积分实例——用Python进行数值计算
Nov 20 Python
Python二次规划和线性规划使用实例
Dec 09 Python
Python tkinter常用操作代码实例
Jan 03 Python
Django实现列表页商品数据返回教程
Apr 03 Python
Pytest之测试命名规则的使用
Apr 16 Python
python 算法题——快乐数的多种解法
May 27 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
深入Apache与Nginx的优缺点比较详解
2013/06/17 PHP
php获取根域名方法汇总
2014/10/28 PHP
[原创]php逐行读取txt文件写入数组的方法
2015/07/02 PHP
PHP获取路径和目录的方法总结【必看篇】
2017/03/04 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
javascript实现input file上传图片预览效果
2015/12/31 Javascript
React.js入门实例教程之创建hello world 的5种方式
2016/05/11 Javascript
ionic js 模型 $ionicModal 可以遮住用户主界面的内容框
2016/06/06 Javascript
利用Javascript实现BMI计算器
2016/08/16 Javascript
jQuery EasyUI Panel面板组件使用详解
2017/02/28 Javascript
Angular中$state.go页面跳转并传递参数的方法
2017/05/09 Javascript
Angular2安装angular-cli
2017/05/21 Javascript
JS中使用cavas截图网页并解决跨域及模糊问题
2018/11/13 Javascript
微信小程序实现多选框全选与取消全选功能示例
2019/05/14 Javascript
vue + elementUI实现省市县三级联动的方法示例
2019/10/29 Javascript
[01:14]3.19DOTA2发布会 三代刀塔人第二代
2014/03/25 DOTA
python中使用smtplib和email模块发送邮件实例
2014/04/22 Python
Python实现栈的方法
2015/05/26 Python
Python使用Redis实现作业调度系统(超简单)
2016/03/22 Python
Linux中Python 环境软件包安装步骤
2016/03/31 Python
Python实现的微信红包提醒功能示例
2019/08/22 Python
简单了解python中的与或非运算
2019/09/18 Python
基于TensorFlow的CNN实现Mnist手写数字识别
2020/06/17 Python
Pycharm配置autopep8实现流程解析
2020/11/28 Python
使用css3实现超炫的loading加载动画效果
2014/05/07 HTML / CSS
CSS3的resize属性使用初探
2015/09/27 HTML / CSS
俄罗斯韩国化妆品网上商店:Cosmasi.ru
2019/10/31 全球购物
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
人事主管的岗位职责
2013/11/16 职场文书
十岁生日同学答谢词
2014/01/19 职场文书
群众路线党课主持词
2014/04/01 职场文书
英语教师求职信范文
2015/03/20 职场文书
我是特种兵观后感
2015/06/11 职场文书
2015中学政教处工作总结
2015/07/22 职场文书
分析MySQL抛出异常的几种常见解决方式
2021/05/18 MySQL
Python使用Kubernetes API访问集群
2021/05/30 Python