networkx关于Graph的各种操作
networkx关于Graph的各种操作
Graph DiGraph MultiGraph
https://blog.csdn.net/moodytong/article/details/7491520
import networkx as nx
G=nx.Graph()
G.add_edge(1,2,weight=1)
G.add_edge(1,3,weight=1)
for ii ,jj,kk in G.edges(data="weight",default=1):print(ii,jj,kk)
nx.adjacency_matrix()
学过线性代数的都了解矩阵,在矩阵上的文章可做的很多,什么特征矩阵,单位矩阵等.grpah存储可以使用矩阵,比如graph的邻接矩阵,权重矩阵等,
这节主要是在等到graph后,如何快速得到这些信息.详细官方文档在这里
#定义图的节点和边
nodes=['0','1','2','3','4','5','a','b','c']
edges=[('0','0',1),('0','1',1),('0','5',1),('0','5',2),('1','2',3),('1','4',5),('2','1',7),('2','4',6),('a','b',0.5),('b','c',0.5),('c','a',0.5)] plt.subplots(1,2,figsize=(10,3)) #定义一个无向图和有向图
G1 = nx.Graph()
G1.add_nodes_from(nodes)
G1.add_weighted_edges_from(edges) G2 = nx.DiGraph()
G2.add_nodes_from(nodes)
G2.add_weighted_edges_from(edges) pos1=nx.circular_layout(G1)
pos2=nx.circular_layout(G2) #画出无向图和有向图
plt.subplot(121)
nx.draw(G1,pos1, with_labels=True, font_weight='bold')
plt.title('无向图',fontproperties=myfont)
plt.axis('on')
plt.xticks([])
plt.yticks([]) plt.subplot(122)
nx.draw(G2,pos2, with_labels=True, font_weight='bold')
plt.title('有向图',fontproperties=myfont)
plt.axis('on')
plt.xticks([])
plt.yticks([]) plt.show() #控制numpy输出小数位数
import numpy as np
np.set_printoptions(precision=3) #邻接矩阵
A = nx.adjacency_matrix(G1)
print('邻接矩阵:\n',A.todense()) #关联矩阵
I = nx.incidence_matrix(G1)
print('\n关联矩阵:\n',I.todense()) #拉普拉斯矩阵
L=nx.laplacian_matrix(G1)
print('\n拉普拉斯矩阵:\n',L.todense()) #标准化的拉普拉斯矩阵
NL=nx.normalized_laplacian_matrix(G1)
print('\n标准化的拉普拉斯矩阵:\n',NL.todense()) #有向图拉普拉斯矩阵
DL=nx.directed_laplacian_matrix(G2)
print('\n有向拉普拉斯矩阵:\n',DL) #拉普拉斯算子的特征值
LS=nx.laplacian_spectrum(G1)
print('\n拉普拉斯算子的特征值:\n',LS) #邻接矩阵的特征值
AS=nx.adjacency_spectrum(G1)
print('\n邻接矩阵的特征值:\n',AS) #无向图的代数连通性
AC=nx.algebraic_connectivity(G1)
print('\n无向图的代数连通性:\n',AC) #图的光谱排序
SO=nx.spectral_ordering(G1)
print('\n图的光谱排序:\n',SO) #两个矩阵的解释看:https://blog.csdn.net/Hanging_Gardens/article/details/55670356 邻接矩阵: [[0. 0. 0. 0. 5. 0. 0. 0. 6. ] [0. 0. 0. 2. 0. 0. 0. 0. 0. ] [0. 0. 0. 0. 0. 0.5 0.5 0. 0. ] [0. 2. 0. 1. 1. 0. 0. 0. 0. ] [5. 0. 0. 1. 0. 0. 0. 0. 7. ] [0. 0. 0.5 0. 0. 0. 0.5 0. 0. ] [0. 0. 0.5 0. 0. 0.5 0. 0. 0. ] [0. 0. 0. 0. 0. 0. 0. 0. 0. ] [6. 0. 0. 0. 7. 0. 0. 0. 0. ]] 关联矩阵: [[1. 1. 0. 0. 0. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 0. 0. 0. 0.] [0. 0. 0. 1. 1. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 1. 0. 0. 0.] [0. 1. 0. 0. 0. 1. 0. 1. 0.] [0. 0. 0. 1. 0. 0. 0. 0. 1.] [0. 0. 0. 0. 1. 0. 0. 0. 1.] [0. 0. 0. 0. 0. 0. 0. 0. 0.] [1. 0. 0. 0. 0. 0. 0. 1. 0.]] 拉普拉斯矩阵: [[11. 0. 0. 0. -5. 0. 0. 0. -6. ] [ 0. 2. 0. -2. 0. 0. 0. 0. 0. ] [ 0. 0. 1. 0. 0. -0.5 -0.5 0. 0. ] [ 0. -2. 0. 3. -1. 0. 0. 0. 0. ] [-5. 0. 0. -1. 13. 0. 0. 0. -7. ] [ 0. 0. -0.5 0. 0. 1. -0.5 0. 0. ] [ 0. 0. -0.5 0. 0. -0.5 1. 0. 0. ] [ 0. 0. 0. 0. 0. 0. 0. 0. 0. ] [-6. 0. 0. 0. -7. 0. 0. 0. 13. ]] 标准化的拉普拉斯矩阵: [[ 1. 0. 0. 0. -0.418 0. 0. 0. -0.502] [ 0. 1. 0. -0.707 0. 0. 0. 0. 0. ] [ 0. 0. 1. 0. 0. -0.5 -0.5 0. 0. ] [ 0. -0.707 0. 0.75 -0.139 0. 0. 0. 0. ] [-0.418 0. 0. -0.139 1. 0. 0. 0. -0.538] [ 0. 0. -0.5 0. 0. 1. -0.5 0. 0. ] [ 0. 0. -0.5 0. 0. -0.5 1. 0. 0. ] [ 0. 0. 0. 0. 0. 0. 0. 0. 0. ] [-0.502 0. 0. 0. -0.538 0. 0. 0. 1. ]] 有向拉普拉斯矩阵: [[ 0.889 -0.117 -0.029 -0.087 -0.319 -0.029 -0.029 -0.129 -0.242] [-0.117 0.889 -0.026 -0.278 -0.051 -0.026 -0.026 -0.114 -0.056] [-0.029 -0.026 0.994 -0.012 -0.009 -0.481 -0.481 -0.025 -0.01 ] [-0.087 -0.278 -0.012 0.757 -0.097 -0.012 -0.012 -0.052 -0.006] [-0.319 -0.051 -0.009 -0.097 0.994 -0.009 -0.009 -0.041 -0.434] [-0.029 -0.026 -0.481 -0.012 -0.009 0.994 -0.481 -0.025 -0.01 ] [-0.029 -0.026 -0.481 -0.012 -0.009 -0.481 0.994 -0.025 -0.01 ] [-0.129 -0.114 -0.025 -0.052 -0.041 -0.025 -0.025 0.889 -0.045] [-0.242 -0.056 -0.01 -0.006 -0.434 -0.01 -0.01 -0.045 0.994]] 拉普拉斯算子的特征值: [-1.436e-15 0.000e+00 4.610e-16 7.000e-01 1.500e+00 1.500e+00 4.576e+00 1.660e+01 2.013e+01] 邻接矩阵的特征值: [12.068+0.000e+00j 2.588+0.000e+00j -7.219+0.000e+00j -4.925+0.000e+00j -1.513+0.000e+00j 1. +0.000e+00j -0.5 +2.393e-17j -0.5 -2.393e-17j0. +0.000e+00j] 无向图的代数连通性: 0.0 图的光谱排序: ['4', '2', '1', '0', '5', 'b', 'c', 'a', '3']
networkx关于Graph的各种操作相关推荐
- PyG-使用networkx对Graph进行可视化
代码 方法一 根据networkx的文档: https://networkx.github.io/documentation/networkx-1.10/reference/generated/net ...
- 第七章:在Spark集群上使用文件中的数据加载成为graph并进行操作(3)
你可以调整graph的构造参数来指定partition的数量. 当数据加载完毕的时候整个web-Googel.txt就缓存进了内存之中,如下所示: 可以看到数据被缓存成了edges. 下面我们使用把m ...
- 第七章:在Spark集群上使用文件中的数据加载成为graph并进行操作(2)
Spark-shell启动后我们可以在控制台看到起运行信息: 点击作业ID即可查看Spark shell运行信息: 下面我们就开始在集群上通过读取hdfs文件的方式来构建graph对象,首先要做的就是 ...
- 【SharePoint】通过Microsoft Graph Rest Api操作SharePoint时如何获取SharePoint站点的WebID, SiteID and ListID
前言 在SharePoint项目中有时候需要使用Microsoft Graph Rest Api接口,在调用Microsoft Graph接口时,需要提供SharePoint WebID, SiteI ...
- NetworkX系列教程(1)-创建graph
小书匠Graph图论 研究中经常涉及到图论的相关知识,而且常常面对某些术语时,根本不知道在说什么.前不久接触了NetworkX这个graph处理工具,发现这个工具已经解决绝大部分的图论问题(也许只是我 ...
- python库整理:networkx 包
1 创建图形 创建一个没有节点和边的空图形. import networkx as nx G = nx.Graph() 根据定义,Graph是一组节点(顶点)和已识别的节点对(称为边.链接等)的集合. ...
- Python数模笔记-NetworkX(4)最小生成树
1.生成树和最小生成树 1.1 生成树 连通的无圈图称为树,就是不包含循环的回路的连通图. 对于无向连通图,生成树(Spanning tree)是原图的极小连通子图,它包含原图中的所有 n 个顶点,并 ...
- Python NetworkX – Python图形库
Python NetworkX module allows us to create, manipulate, and study structure, functions, and dynamics ...
- Python networkx库
NetworkX 是用于创建.操作复杂图数据结构的 Python 包. 安装: pip install networkx 1. 增删节点和边 import networkx as nxG = nx.G ...
最新文章
- 【联邦学习】FATE 集群部署 step3
- php进程SIGBUS,SIGSEGV错误
- Oracle入门(十二G)之序列
- jQuery: 插件开发模式详解 $.extend(), $.fn, $.widget()
- 英伟达吞并ARM的交易计划失败!
- VS2013过期激活,VS2013激活,vs2013序列号,VS2013密钥,VS013产品密匙
- 软考 java程序设计,软考程序员考点Java语言程序设计之数组
- 【github】-MM-Wiki初体验
- cad阀门插件lisp_cad lisp程序中看不出怎么输入命令
- Vertica的这些事(四)—— 关于vertica常用函数介绍(持续更新ing)
- js数组、数组嵌套根据某个字段排序(eachart图标双击事件、vue双击)
- WEB安全——CS中Beacon的使用
- python递归算法解决兔子繁殖问题_经典生兔子问题——递归方法
- Kubernetes K8s 结合国内外文章解决 The kubelet is not running
- 音游手台中--EC11编码器的控制[2]
- win10 设置滑动关机以及修改图片为ico格式
- JDK和KRE安装及其区别
- Kubernetes弃用Docker?关于Kubernetes、Docker和containerd的那些事
- Python爬虫爬取笔趣阁小说
- 力扣1845——座位预约管理系统(优先队列)
热门文章
- 图书馆计算机书籍入门,数字化阅读空间 | 想要从零开始学电脑,却不知道该从哪入手?...
- 超级面试题2019年6月第1次发布
- 使用加密锁如何防止软件被破解
- 装饰宝典必看 细数开关插座惋惜TOP10
- 使用dobot magician遇到的问题
- 42㎡小户型变形记,为一对程序员情侣,改造时尚复古小宅
- html网页制作实例ppt,HTML网页制作.ppt
- ARM芯片开发(S5PV210芯片)——定时器、看门狗、RTC
- wince7 屏幕控制_触摸屏控制方法,个人总结(欢迎拍砖,但不要打脸)
- 大连英语四六级百家外语10个让你四六级听力涨分的小技巧