Python图形工具 - 删除未连接的顶点

时间:2015-10-13 14:22:47

标签: python algorithm graph graph-tool

我正在编写一个使用Python graph-tool库的程序,我很幸运使用了graph_tool.draw.radial_tree_layout(g,vertexes[0])的径向树布局。但是,我的图形中有几个部分与其余部分截断,并且没有边缘通向我想要的图形的任何部分。当我绘制图形时,断开的网络被放入中间,在我希望成为中心的顶点顶部。因此,我需要一种算法来移除这些没有到vertexes[0]路径的顶点,或者一个将它们放在图形上的其他位置的函数。

1 个答案:

答案 0 :(得分:0)

我明白了:

(我从SQLite数据库中提取)

c.execute('SELECT * FROM connections')
ucon = c.fetchall()

lastlevel = ['Philosophy']
nextlevel = []

pcon = []

while lastlevel != []: 
    for i in ucon:
        if i[1] in lastlevel:
            nextlevel.append(i[0])
            pcon.append(i)
    lastlevel = nextlevel
    nextlevel = []

SQLite数据库中的每一行都是跨越边缘的起点和终点的元组。这不是很有效,但它确实有效!