【发布时间】:2017-06-08 06:00:09
【问题描述】:
我发现图形工具文档非常晦涩难懂,比其他类似的库要神秘得多。
我真的不知道如何从图形工具中的图形中“提取”组件(也称为连接组件)。我想将单独文件中的子图另存为单独的 Graph,但我不明白如何从我的 Graph 对象开始识别它们。
【问题讨论】:
标签: python subgraph graph-tool
我发现图形工具文档非常晦涩难懂,比其他类似的库要神秘得多。
我真的不知道如何从图形工具中的图形中“提取”组件(也称为连接组件)。我想将单独文件中的子图另存为单独的 Graph,但我不明白如何从我的 Graph 对象开始识别它们。
【问题讨论】:
标签: python subgraph graph-tool
最简单(也是最快)的方法是使用 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
【讨论】: