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计算一个序列的平均值的方法
Jul 11 Python
详解Python中的__new__、__init__、__call__三个特殊方法
Jun 02 Python
python 爬虫 批量获取代理ip的实例代码
May 22 Python
python opencv判断图像是否为空的实例
Jan 26 Python
用Python实现BP神经网络(附代码)
Jul 10 Python
解决python tkinter界面卡死的问题
Jul 17 Python
django之对FileField字段的upload_to的设定方法
Jul 28 Python
Python空间数据处理之GDAL读写遥感图像
Aug 01 Python
在Django中实现添加user到group并查看
Nov 18 Python
Python如何实现线程间通信
Jul 30 Python
Python利用imshow制作自定义渐变填充柱状图(colorbar)
Dec 10 Python
使用numpngw和matplotlib生成png动画的示例代码
Jan 24 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
dedecms模板标签代码官方参考
2007/03/17 PHP
浅析PHP编程中10个最常见的错误
2014/08/08 PHP
PHP中soap的用法实例
2014/10/24 PHP
深入理解PHP 数组之count 函数
2016/06/13 PHP
php实现水印文字和缩略图的方法示例
2016/12/29 PHP
微信接口生成带参数的二维码
2017/07/31 PHP
通过Unicode转义序列来加密,按你说的可以算是混淆吧
2007/05/06 Javascript
用js实现控制内容的向上向下滚动效果
2007/06/26 Javascript
JS 控制CSS样式表
2009/08/20 Javascript
基于JQuery的6个Tab选项卡插件
2010/09/03 Javascript
理解JavaScript的prototype属性
2012/02/11 Javascript
js模拟select下拉菜单控件的代码
2013/05/08 Javascript
jQuery实用技巧必备(中)
2015/11/03 Javascript
Node.js环境下JavaScript实现单链表与双链表结构
2016/06/12 Javascript
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
mac中利用NVM管理不同node版本的方法详解
2017/11/08 Javascript
jQuery 导航自动跟随滚动的实现代码
2018/05/30 jQuery
说说Vue.js中的functional函数化组件的使用
2019/02/12 Javascript
layui点击左侧导航栏,实现不刷新整个页面,只刷新局部的方法
2019/09/25 Javascript
小程序接入腾讯位置服务的详细流程
2020/03/03 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
2020/09/08 Javascript
Openlayers测量距离与面积的实现方法
2020/09/25 Javascript
Python备份Mysql脚本
2008/08/11 Python
使用python 和 lint 删除项目无用资源的方法
2017/12/20 Python
opencv python 2D直方图的示例代码
2018/07/20 Python
对Python发送带header的http请求方法详解
2019/01/02 Python
pandas DataFrame行或列的删除方法的实现示例
2019/08/02 Python
django框架单表操作之增删改实例分析
2019/12/16 Python
纯CSS3实现鼠标悬停提示气泡效果
2014/02/28 HTML / CSS
法国创作个性化T恤衫和其他定制产品平台:Tostadora
2018/04/08 全球购物
巴西独家产品和现场演示购物网站:Shoptime
2019/07/11 全球购物
软件工程师面试题
2012/06/25 面试题
大学生蛋糕店创业计划书
2014/01/13 职场文书
最新大学生创业计划书写作攻略
2014/04/02 职场文书
《北大荒的秋天》教学反思
2014/04/14 职场文书
幼儿评语大全
2014/04/30 职场文书