Networkx: extrae el componente conectado que contiene un nodo determinado (gráfico dirigido)
Estoy tratando de extraer de un gráfico grande el subgrafo de todos los nodos conectados que contienen un nodo específico.
¿Hay alguna solución en la biblioteca Networkx?
[EDITAR]
Mi gráfica es un DiGraph
[EDITAR]
Repensado simplemente:
Quiero la parte de mi gráfico que contiene mi nodo específico N_i y todos los nodos que están conectados directa o indirectamente (pasando por otros nodos) utilizando cualquier borde entrante o saliente.
Ejemplo:
>>> g = nx.DiGraph()
>>> g.add_path(['A','B','C',])
>>> g.add_path(['X','Y','Z',])
>>> g.edges()
[('A', 'B'), ('B', 'C'), ('Y', 'Z'), ('X', 'Y')]
Mi resultado deseado sería:
>>> g2 = getSubGraph(g, 'B')
>>> g2.nodes()
['A', 'B', 'C']
>>> g2.edges()
[('A', 'B'), ('B', 'C')]