所以我正在尝试使用igraph和我拥有的邻接矩阵构建图形。它是一个对称矩阵,其中两个节点之间应该存在边缘,而没有连接的地方应该有零。我正在使用下面的代码生成它:
g = igraph.Graph.Adjacency(adjacency)
igraph.plot(g, layout = 'kk')
我的邻接矩阵是
类型numpy.matrixlib.defmatrix.matrix
但是我试图将它转换为列表和数组,但仍然得到相同的错误:
TypeError: Error while converting adjacency matrix
有什么想法吗? 感谢
答案 0 :(得分:1)
igraph.Graph的Adjacency method需要一个igraph.datatypes.Matrix类型的矩阵,而不是一个numpy矩阵。
igraph会将列表列表转换为矩阵。尝试使用
g = igraph.Graph.Adjacency(adjacency.astype(bool).tolist())
其中adjacency
是你的0和1的numpy矩阵。