从igraph中的邻接矩阵构造图

时间:2017-10-30 18:38:38

标签: python igraph

所以我正在尝试使用igraph和我拥有的邻接矩阵构建图形。它是一个对称矩阵,其中两个节点之间应该存在边缘,而没有连接的地方应该有零。我正在使用下面的代码生成它:

g = igraph.Graph.Adjacency(adjacency)
igraph.plot(g, layout = 'kk')

我的邻接矩阵是

类型
numpy.matrixlib.defmatrix.matrix

但是我试图将它转换为列表和数组,但仍然得到相同的错误:

TypeError: Error while converting adjacency matrix

有什么想法吗? 感谢

1 个答案:

答案 0 :(得分:1)

igraph.Graph的Adjacency method需要一个igraph.datatypes.Matrix类型的矩阵,而不是一个numpy矩阵。

igraph会将列表列表转换为矩阵。尝试使用

g = igraph.Graph.Adjacency(adjacency.astype(bool).tolist())

其中adjacency是你的0和1的numpy矩阵。