induced_subgraph#

induced_subgraph(G, nbunch)[源代码]#

返回的子图视图 G 仅在nbunch中显示节点。

一组节点n上一个图的诱导子图是一个两端都是n的节点n和g的边的图。

参数
G网络X图表
nbunch节点、节点容器或无(适用于所有节点)
返回
subgraph子图视图

中的子图的只读视图 G 由节点诱导。对图表的更改 G 将反映在视图中。

笔记

要创建具有自己的节点边缘和属性副本的可变子图,请使用 subgraph.copy()Graph(subgraph)

对于图到子图的就地缩减,可以删除节点: G.remove_nodes_from(n in G if n not in set(nbunch))

如果你要计算子图的子图,你可以得到一个视图链,当链中有大约15个视图时,这个视图链会非常慢。如果它们都是诱导子图,那么可以通过使它们成为原始图的所有子图来缩短链。图类方法 G.subgraph 这样做时 G 是一个子图。相反,此函数允许您根据自己的意愿选择是否构建链。返回的子图是上的视图 G .

实例

>>> G = nx.path_graph(4)  # or DiGraph, MultiGraph, MultiDiGraph, etc
>>> H = G.subgraph([0, 1, 2])
>>> list(H.edges)
[(0, 1), (1, 2)]