Python根据已知邻接矩阵绘制无向图操作示例
作者:水之魂2018 时间:2023-04-26 18:53:27
本文实例讲述了Python根据已知邻接矩阵绘制无向图操作。分享给大家供大家参考,具体如下:
有六个点:[0,1,2,3,4,5,6],六个点之间的邻接矩阵如表格所示,根据邻接矩阵绘制出相对应的图
| 0 | 1 | 2 | 3 | 4 | 5 | 6 |
0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 | 1 | 1 | 1 | 1 |
2 | 0 | 1 | 0 | 1 | 0 | 1 | 0 |
3 | 1 | 1 | 1 | 0 | 1 | 1 | 1 |
4 | 0 | 1 | 0 | 1 | 1 | 1 | 1 |
5 | 1 | 1 | 1 | 1 | 1 | 0 | 0 |
6 | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
将点之间的联系构造成如下矩阵
N = [[0, 3, 5, 1],
[1, 5, 4, 3],
[2, 1, 3, 5],
[3, 5, 1, 4],
[4, 5, 1, 3],
[5, 3, 4, 1],
[6, 3, 1, 4]]
代码如下
# -*- coding:utf-8 -*-
#! python3
import networkx as nx
import matplotlib.pyplot as plt
G=nx.Graph()
point=[0,1,2,3,4,5,6]
G.add_nodes_from(point)
edglist=[]
N = [[0, 3, 5, 1],[1, 5, 4, 3],[2, 1, 3, 5],[3, 5, 1, 4],[4, 5, 1, 3],[5, 3, 4, 1],[6, 3, 1, 4]]
for i in range(7):
for j in range(1,4):
edglist.append((N[i][0],N[i][j]))
G=nx.Graph(edglist)
position = nx.circular_layout(G)
nx.draw_networkx_nodes(G,position, nodelist=point, node_color="r")
nx.draw_networkx_edges(G,position)
nx.draw_networkx_labels(G,position)
plt.show()
显示结果:
希望本文所述对大家Python程序设计有所帮助。
来源:https://blog.csdn.net/weixin_40198632/article/details/78418714
标签:Python,邻接矩阵,绘制
0
投稿
猜你喜欢
MySQL的常用命令集锦
2024-01-16 00:40:44
python用turtle库绘画圣诞树
2023-05-24 19:35:40
mysql中为用户设置密码的多种方法
2024-01-26 07:36:07
python机器学习实战之树回归详解
2022-02-05 04:37:10
在自动化中用python实现键盘操作的方法详解
2021-02-04 00:23:48
js中arguments的用法(实例讲解)
2024-06-15 08:20:08
django与小程序实现登录验证功能的示例代码
2023-08-04 01:06:58
数据库安全管理的三个经验分享
2009-04-01 15:49:00
Python import与from import使用及区别介绍
2022-05-17 12:09:19
python实现21点小游戏
2023-11-21 08:58:27
Div+CSS网页布局对SEO的影响漫谈
2008-08-22 12:58:00
Go语言实现简单的一个静态WEB服务器
2024-04-28 09:12:56
Python实现1-9数组形成的结果为100的所有运算式的示例
2023-04-09 10:52:37
教你学会使用Python正则表达式
2023-01-17 14:08:56
用MySQL做站点时如何记录未知错误的发生
2010-09-30 14:11:00
利用Python上传日志并监控告警的方法详解
2022-08-23 15:31:01
WEB前端开发经验总结 Ⅰ
2008-06-12 12:23:00
执行python脚本并传入json数据格式参数方式
2021-12-09 21:22:14
Bootstrap实现渐变顶部固定自适应导航栏
2023-08-23 00:52:40
Python学习之字典和集合的使用详解
2022-11-01 19:54:21