图上的分段错误简化

时间:2017-03-31 02:46:03

标签: python python-2.7 igraph

我正在使用contract_vertices合并图表中的节点,然后在图表上调用simplify,但这样做会出现分段错误。我不确定我做错了什么。以下是重现错误的代码:

from igraph import summary, read, Graph
g = Graph()
g.add_vertices(5)
g.vs["name"] = ["1","2","3","4","5"]
g.add_edge("1","2")
merge_vertex_list = [1,1,3,3,3]
g.contract_vertices(merge_vertex_list,"first")
g.simplify()

我得到的错误:

Segmentation fault: 11

注意:当我在没有第二个参数即contract_vertices参数的情况下调用combine_attrs时,它正常工作。

1 个答案:

答案 0 :(得分:0)

我想出了它的原因。我传递的用于合并数组的列表应该包含连续的整数,这将形成顶点的新索引。在上面的例子中,我传递[1,1,3,3,3],当更改为[0,0,1,1,1]时工作正常。我仍然认为它应该显示一个有意义的错误信息。