Pour une raison quelconque, lorsque j'essaie d'implémenter cette fonction dans mon graphe créé dynamiquement, j'obtiens cette erreur bizarre. Je peux exécuter les exemples de fonctions donnés en ligne mais il échoue quand je l'exécute.graphviz_layout: AttributeError: l'objet 'NoneType' n'a pas d'attribut 'get_node'
stacktrace:
122 #pos = nx.spectral_layout(G)
123 #write_dot(G,'test.dot')
--> 124 pos= graphviz_layout(G,prog='twopi',args='')
125 nx.draw_networkx(G, node_color=nodeColors, arrows=False, alpha=.8, labels=nodeLabels, font_size=8)
126 print(nx.info(G))
246 This is a wrapper for pydot_layout.
247 """
--> 248 return pydot_layout(G=G,prog=prog,root=root,**kwds)
249
250
281 for n in G.nodes():
282 pydot_node = pydotplus.Node(make_str(n)).get_name()
--> 283 node=Q.get_node(pydot_node)
284
285 if isinstance(node,list):
AttributeError: 'NoneType' object has no attribute 'get_node'
éternelle Je pense que si le 'Q' étaient simplement une faute de frappe, alors l'erreur serait: 'NameError: le nom 'Q' n'est pas défini' au lieu de: ' AttributeError: L'objet 'NoneType' n'a pas d'attribut 'get_node''. Le chemin d'exécution de Python doit détecter le fait que Q n'est pas défini avant de tenter de trouver un attribut sur cet objet. –
Oui, vous avez raison. – Joel