首页 > 脚本专栏 > python > Python networkx获取图的邻接矩阵

Python networkx中获取图的邻接矩阵方式

作者:兔子爱读书

这篇文章主要介绍了Python networkx中获取图的邻接矩阵方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

networkx如何获取图的邻接矩阵

需要调取networkx中graph实例的邻接矩阵,搜“network 邻接矩阵”没有迅速找到解决方案。我写一个吧。

networkx中有个adjacency_matrix()函数,得到的邻接表看形状虽然是N*N,但是打印出来会发现是这个格式:

(0, 1)    1
(0, 30)    1
(0, 33)    1
(0, 99)    1

第一列是源头和终止节点,第二列是权重。

但是,如果你下列语句遍历,是会报错的:ValueError: not enough values to unpack (expected 2, got 1)

# 错误示范
for (x,y), w in nx.adjacency_matrix(G):
    print(x, y, w)
import networkx as nx
import numpy as np
A=np.array(nx.adjacency_matrix(G).todense())

转换为numpy矩阵是因为原始的格式不支持A[i][j]形式的索引。

成功得到邻接矩阵,解决!

[[0 0 0 ... 0 0 1]
[0 0 1 ... 0 0 0]
[0 1 0 ... 0 0 0]
...
[0 0 0 ... 0 0 0]
[0 0 0 ... 0 0 1]
[1 0 0 ... 0 1 0]]

邻接矩阵 转 网络图

逛知乎看到的,老是忘记,记一下:

import networkx as nx
graph = nx.from_numpy_matrix(Matrix)  

networkx自带函数将邻接矩阵转为网络图

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • python请求域名requests.(url = 地址)报错
    python请求域名requests.(url = 地址)报错
    2023-02-02
  • spark dataframe全局排序id与分组后保留最大值行
    spark dataframe全局排序id与分组后保留最大值行
    2023-02-02
  • python去除字符串中的空格、特殊字符和指定字符的三种方法
    python去除字符串中的空格、特殊字符和指定字符的三种方法
    2023-02-02
  • Python+Pygame实现彩色五子棋游戏
    Python+Pygame实现彩色五子棋游戏
    2023-02-02
  • python中networkx函数的具体使用
    python中networkx函数的具体使用
    2023-02-02
  • Python中Generators教程的实现
    Python中Generators教程的实现
    2023-02-02
  • 基于Python实现文章信息统计的小工具
    基于Python实现文章信息统计的小工具
    2023-02-02
  • Python实现统计文章阅读量的方法详解
    Python实现统计文章阅读量的方法详解
    2023-02-02
  • 美国设下计谋,用娘炮文化重塑日本,已影响至中国
    美国设下计谋,用娘炮文化重塑日本,已影响至中国
    2021-11-19
  • 时空伴随者是什么意思?时空伴随者介绍
    时空伴随者是什么意思?时空伴随者介绍
    2021-11-09
  • 工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    2021-11-05
  • 2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2021-10-26
  • 电脑版 - 返回首页

    2006-2023 脚本之家 JB51.Net , All Rights Reserved.
    苏ICP备14036222号