draw_networkx () dans NetworkX
Question
Je reçois cette erreur lorsque vous essayez NetworkX
networkx.draw_networkx(G,ax = self.axes)
TypeError: draw_networkx() takes at least 2 non-keyword arguments (1 given)
Le code pour le même est
G=networkx.Graph()
G.add_node("spam")
G.add_edge(1,2)
networkx.draw_networkx(G,ax = self.axes)
Quelqu'un peut-il expliquer ce que je fais mal et comment puis-je corriger .... Le lien pour la fonction est draw_networkx .
Merci
La solution
Il attend l'argument pos
, pour informer la routine de dessin comment positionner les nœuds. Voici comment vous pouvez utiliser une mise en page de printemps pour alimenter pos
:
networkx.draw_networkx(G, pos=networkx.spring_layout(G), ax=self.axes)
Sortie:
Autres conseils
samplebias a donné un excellent exemple.
Si vous voulez une analyse façon de le faire pour la ligne de commande encore plus simple ou déconner:
networkx.draw_spring(G)
Il est construit dans la méthode de dessin basé sur le poids de printemps et le poids des honneurs que vous pouvez inclure des choses comme:
G=networkx.Graph()
G.add_node("spam")
G.add_edge(1,2,weight=4.7)
G.add_edge(1,"spam")
Et la connexion 1-2 sera plus courte que la connexion 1-Spam en raison de la pondération du printemps. Très rapide et facile.