python将邻接矩阵输出成图的实现


Posted in Python onNovember 21, 2019

利用networkx,numpy,matplotlib,将邻接矩阵输出为图形。

1,自身确定一个邻接矩阵,然后通过循环的方式添加变,然后输出图像

import networkx as nx
import matplotlib.pyplot as plt
import numpy as np
 
G = nx.Graph()
Matrix = np.array(
  [
    [0, 1, 1, 1, 1, 1, 0, 0], # a
    [0, 0, 1, 0, 1, 0, 0, 0], # b
    [0, 0, 0, 1, 0, 0, 0, 0], # c
    [0, 0, 0, 0, 1, 0, 0, 0], # d
    [0, 0, 0, 0, 0, 1, 0, 0], # e
    [0, 0, 1, 0, 0, 0, 1, 1], # f
    [0, 0, 0, 0, 0, 1, 0, 1], # g
    [0, 0, 0, 0, 0, 1, 1, 0] # h
  ]
)
for i in range(len(Matrix)):
  for j in range(len(Matrix)):
    G.add_edge(i, j)
 
nx.draw(G)
plt.show()

python将邻接矩阵输出成图的实现

2,有向图

G = nx.DiGraph()
G.add_node(1)
G.add_node(2)
G.add_nodes_from([3, 4, 5, 6])
G.add_cycle([1, 2, 3, 4])
G.add_edge(1, 3)
G.add_edges_from([(3, 5), (3, 6), (6, 7)])
nx.draw(G)
# plt.savefig("youxiangtu.png")
plt.show()

python将邻接矩阵输出成图的实现

3, 5节点完全图

G = nx.complete_graph(5)
nx.draw(G)
plt.savefig("8nodes.png")
plt.show()

python将邻接矩阵输出成图的实现

4,无向图

G = nx.Graph()
G.add_node(1)
G.add_node(2)
G.add_nodes_from([3, 4, 5, 6])
G.add_cycle([1, 2, 3, 4])
G.add_edge(1, 3)
G.add_edges_from([(3, 5), (3, 6), (6, 7)])
nx.draw(G)
# plt.savefig("wuxiangtu.png")
plt.show()

python将邻接矩阵输出成图的实现

5,颜色节点图

G = nx.Graph()
G.add_edges_from([(1, 2), (1, 3), (1, 4), (1, 5), (4, 5), (4, 6), (5, 6)])
pos = nx.spring_layout(G)
 
colors = [1, 2, 3, 4, 5, 6]
nx.draw_networkx_nodes(G, pos, node_color=colors)
nx.draw_networkx_edges(G, pos)
 
plt.axis('off')
# plt.savefig("color_nodes.png")
plt.show()

将图转化为邻接矩阵,再将邻接矩阵转化为图,还有图的集合表示,邻接矩阵表示,图形表示,这三种表现形式互相转化的问题是一个值得学习的地方,继续加油!

以上这篇python将邻接矩阵输出成图的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python引用(import)文件夹下的py文件的方法
Aug 26 Python
python中ConfigParse模块的用法
Sep 29 Python
Python最基本的数据类型以及对元组的介绍
Apr 14 Python
Python的IDEL增加清屏功能实例
Jun 19 Python
Python matplotlib绘图可视化知识点整理(小结)
Mar 16 Python
Python+OpenCV目标跟踪实现基本的运动检测
Jul 10 Python
python使用mitmproxy抓取浏览器请求的方法
Jul 02 Python
Python处理session的方法整理
Aug 29 Python
将matplotlib绘图嵌入pyqt的方法示例
Jan 08 Python
使用python的turtle函数绘制一个滑稽表情
Feb 28 Python
使用python编写一个语音朗读闹钟功能的示例代码
Jul 14 Python
python随机打印成绩排名表
Jun 23 Python
python实现小世界网络生成
Nov 21 #Python
使用Python的networkx绘制精美网络图教程
Nov 21 #Python
利用Python绘制Jazz网络图的例子
Nov 21 #Python
Python TCP通信客户端服务端代码实例
Nov 21 #Python
python绘制随机网络图形示例
Nov 21 #Python
python绘制BA无标度网络示例代码
Nov 21 #Python
Python之指数与E记法的区别详解
Nov 21 #Python
You might like
php mysql数据库操作分页类
2008/06/04 PHP
php购物车实现方法
2015/01/03 PHP
PHP使用缓存即时输出内容(output buffering)的方法
2015/08/03 PHP
php插入含有特殊符号数据的处理方法
2016/11/24 PHP
php上传图片并给图片打上透明水印的代码
2010/06/07 Javascript
Jquery网页出现的乱码问题的三种解决方法
2013/06/30 Javascript
jquery eval解析JSON中的注意点介绍
2013/08/23 Javascript
JavaScript学习笔记之数组随机排序
2016/03/23 Javascript
Node.js中用D3.js的方法示例
2017/01/16 Javascript
Angular2 路由问题修复详解
2017/03/01 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
2017/05/03 Javascript
原生JS实现的雪花飘落动画效果
2018/05/03 Javascript
小程序分享模块超级详解(推荐)
2019/04/10 Javascript
vue百度地图 + 定位的详解
2019/05/13 Javascript
jQuery实现全选、反选和不选功能的方法详解
2019/12/04 jQuery
javascript读取本地文件和目录方法详解
2020/08/06 Javascript
[01:55]《走出家门看比赛》——DOTA2 2015国际邀请赛同城线下观战
2015/07/18 DOTA
[44:58]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第二场
2018/04/06 DOTA
Python入门及进阶笔记 Python 内置函数小结
2014/08/09 Python
Python的Flask框架中@app.route的用法教程
2015/03/31 Python
python中sleep函数用法实例分析
2015/04/29 Python
微信小程序跳一跳游戏 python脚本跳一跳刷高分技巧
2018/01/04 Python
python 实现UTC时间加减的方法
2018/12/31 Python
python爬取Ajax动态加载网页过程解析
2019/09/05 Python
Python嵌套函数,作用域与偏函数用法实例分析
2019/12/26 Python
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
FILA德国官方网站:来自意大利的体育和街头服饰品牌
2019/07/19 全球购物
Ajxa常见问题都有哪些
2014/03/26 面试题
String、StringBuffer、StringBuilder有区别
2015/09/18 面试题
中专生学习生活的自我评价分享
2013/10/27 职场文书
劳资员岗位职责
2013/11/11 职场文书
职业生涯规划书的格式
2013/12/29 职场文书
保险专业大学生职业规划书
2014/03/03 职场文书
大学生村官承诺书
2014/03/28 职场文书
2014年五四青年节演讲比赛方案
2014/04/22 职场文书
医学专业毕业生求职信
2014/06/20 职场文书