networkx.classes.function.edge_subgraph

edge_subgraph(G, edges)[源代码]

返回由指定边诱导的子图的视图。

诱导子图包含 edges 每个节点都与这些边中的任何一条相连。

参数:
  • GNETWorkX图
  • 边缘可迭代的 )--一种无边的东西。边缘不存在于 G 被忽略。
返回:

子图 --一个只读的边诱导子图 G . 改变到 G 反映在视图中。

返回类型:

SubGraph View

笔记

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

如果递归地创建子图的子图,则可以以一系列子图结束,这些子图在大约15个嵌套的子图视图中速度非常慢。幸运的是,Edge_子图过滤器可以很好地嵌套,因此您可以在此函数中使用原始图作为g,以避免链。我们不以编程的方式排除链,因此像 edge_subgraph A的 restricted_view 可以创建。

实际案例

>>> import networkx as nx
>>> G = nx.path_graph(5)
>>> H = G.edge_subgraph([(0, 1), (3, 4)])
>>> list(H.nodes)
[0, 1, 3, 4]
>>> list(H.edges)
[(0, 1), (3, 4)]