2011-10-17 18 views
6

Ho un set di dati che sto caricando come un grafico per vari tempi e cercando di capire le relazioni tra di loro.Come si elimina un nodo in networkx?

Voglio eliminare tutti i nodi che non hanno bordi ma non sono sicuro del comando per rimuovere o eliminare i nodi. Qualche idea su come fare questo?

risposta

12
import networkx as nx 
import matplotlib.pyplot as plt 

G=nx.Graph() 
G.add_edges_from([('A','B'),('A','C'),('B','D'),('C','D')]) 
nx.draw(G) 
plt.show() 

enter image description here

G.remove_node('B') 
nx.draw(G) 
plt.show() 

enter image description here

Per rimuovere più nodi, v'è anche il metodo Graph.remove_nodes_from().

3

Documentation copre.

Graph.remove_node (n): Rimuovi nodo n.

Graph.remove_nodes_from (nodi): rimuovere più nodi.

Ad esempio:

In : G=networkx.Graph() 

In : G.add_nodes_from([1,2,3]) 

In : G.nodes() 
Out: [1, 2, 3] 

In : G.remove_node(2) 

In : G.nodes() 
Out: [1, 3] 
Problemi correlati