2017-01-23 68 views
0

我发现图形工具文档极其模糊,比其他类似的库更加神秘。图形工具:子图形作为新的图形对象

我真的不知道如何从图形工具中的图表中“提取”组件(即连接组件)。我想将子图保存在单独的文件中作为单独的图形,但我不明白如何从我的Graph对象开始识别它们。

回答

2

最简单(也是最快)的方法是使用GraphView对象。

# label the components in a property map 
c = label_components(g)[0] 

# "extract" component number 3 
u = GraphView(g, vfilt=c.a == 3) 

对象u现在是g诱导子图,其中包含组件标签3.注意所有的顶点,一个GraphView对象不复制图形,它只是掩盖了其他顶点/边。

如果你希望子图的副本(例如,如果你想修改它,还是原来的图),你只是从它实例化一个新的Graph对象:

u = Graph(u, prune=True) 
的图形视图

更多信息可在文档中找到:https://graph-tool.skewed.de/static/doc/quickstart.html#graph-views