当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX adjacency_matrix用法及代码示例


本文简要介绍 networkx.linalg.graphmatrix.adjacency_matrix 的用法。

用法:

adjacency_matrix(G, nodelist=None, dtype=None, weight='weight')

返回 G 的邻接矩阵。

参数

G图形

NetworkX 图

nodelist列表,可选

根据 nodelist 中的节点对行和列进行排序。如果 nodelist 为 None,则排序由 G.nodes() 生成。

dtypeNumPy 数据类型,可选

数组所需的数据类型。如果无,则使用 NumPy 默认值。

weight字符串或无,可选(默认='weight')

用于提供矩阵中每个值的边数据键。如果没有,则每条边的权重为 1。

返回

ASciPy 稀疏矩阵

G的邻接矩阵表示。

注意

对于有向图,条目 i,j 对应于从 i 到 j 的边。

如果您想要一个纯 Python 邻接矩阵表示,请尝试 networkx.convert.to_dict_of_dicts,它将返回可以作为稀疏矩阵处理的 dictionary-of-dictionaries 格式。

对于具有平行边的 MultiGraph/MultiDiGraph,权重相加。有关其他选项,请参阅to_numpy_array

用于图中自循环边的约定是将对角矩阵条目值分配给边权重属性(如果边没有权重属性,则为数字 1)。如果需要将边权重加倍的替代约定,则可以按如下方式修改生成的 Scipy 稀疏矩阵:

>>> G = nx.Graph([(1, 1)])
>>> A = nx.adjacency_matrix(G)
>>> print(A.todense())
[[1]]
>>> A.setdiag(A.diagonal() * 2)
>>> print(A.todense())
[[2]]

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.linalg.graphmatrix.adjacency_matrix。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。