如何在python中获取最小生成树矩阵

Arslan Ali Awan |

最初,我有二维数组。通过使用此数组,我创建了一个在其边缘具有权重的图形。现在,我正在尝试使用此图制作最小生成树矩阵,但我不能按需制作。我正在使用以下代码制作图形。

 G = nx.from_numpy_matrix(ED_Matrix, create_using=nx.DiGraph)
 layout = nx.spring_layout(G)
 sizes = len(ED_Matrix)
 nx.draw(G, layout, with_labels=True, node_size=sizes)
 labels = nx.get_edge_attributes(G, "weight")
 output = nx.draw_networkx_edge_labels(G, pos=layout, edge_labels=labels)
 plt.show()

它给出这样的输出 在此处输入图片说明

现在我正在使用MST代码,以获取其MST矩阵,但其给出了这样的错误。

 from scipy.sparse import csr_matrix
 from scipy.sparse.csgraph import minimum_spanning_tree
 Tcsr = minimum_spanning_tree(G)
 Tcsr.toarray().astype(int)

在此处输入图片说明

Mathfux

考虑到scipy文档中的示例,应该从G的邻接矩阵(而不是G)构造它。

您可能希望在计算(分配)时Gnx.adjacency_matrix(G)csr_matrix(nx.adjacency_matrix(G))ED_Matrix本身替换Tcsr

Tcsr = minimum_spanning_tree(nx.adjacency_matrix(G)) #or
Tcsr = minimum_spanning_tree(csr_matrix(nx.adjacency_matrix(G))) #or
Tcsr = minimum_spanning_tree(ED_Matrix)

Tcsr是一个稀疏矩阵,稍后将其转换为numpy数组。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python:如何可视化网络的最小生成树?

来自分类Dev

Geotools最小生成树

来自分类Dev

如何通过循环查找找到最小生成树?

来自分类Dev

递归最小生成树算法

来自分类Dev

最小生成树只有叶子?

来自分类Dev

改进寻找最小生成树的实现

来自分类Dev

普里姆的最小生成树

来自分类Dev

改进寻找最小生成树的实现

来自分类Dev

如何使用x,y坐标自动计算networkx中邻居之间的欧式距离并找到最小生成树

来自分类Dev

通过Prim算法获得的图的最小生成树

来自分类Dev

如果添加了边缘,则更新最小生成树

来自分类Dev

保证边缘不属于最小生成树

来自分类Dev

具有度约束的最小生成树

来自分类Dev

Julia-使用GraphPlots绘制最小生成树

来自分类Dev

用cplex-opl编码最小生成树

来自分类Dev

具有度约束的最小生成树

来自分类Dev

如果边缘被删除,则更新最小生成树

来自分类Dev

带两个边的最小生成树

来自分类Dev

最小生成树二维图

来自分类Dev

使用邻接表表示最小生成树

来自分类Dev

了解何时将 Prim 或 Kruskal 用于最小生成树

来自分类Dev

构造一个有效的最小生成树,使G中给定的顶点子集为叶子+证明

来自分类Dev

查找跨越给定最小生成树的最小权重完整图

来自分类Dev

基于最大边缘权重分割SciPy最小生成树的方法?

来自分类Dev

提高最小生成树的深度,首先要怎么做?

来自分类Dev

从最小生成树计算两个顶点之间的子路径

来自分类Dev

无向图和有向图的最小生成树算法有什么区别?

来自分类Dev

最小生成树(MST)和所有对最短路径(APSP)有什么区别?

来自分类Dev

一个图可能具有多个最小生成树

Related 相关文章

热门标签

归档