libreria library networkx

library - Trazar el gráfico de networkx con etiquetas de nodo predeterminadas al nombre del nodo



python graph library (1)

tl / dr: solo agregue with_labels=True a la llamada nx.draw .

Por lo tanto, la razón principal de la complejidad adicional en https://networkx.github.io/documentation/latest/examples/drawing/labels_and_colors.html es que muestra cómo configurar muchas cosas diferentes como las etiquetas, así como para otorgar diferentes nodos a diferentes colores y proporcionar un control cuidadoso sobre las posiciones de los nodos. Parece que solo desea el nombre que se le dio cuando se creó el nodo, y está satisfecho con el color predeterminado y la posición predeterminada

import networkx as nx import pylab as plt G=nx.Graph() # Add nodes and edges G.add_edge("Node1", "Node2") nx.draw(G, with_labels = True) plt.savefig(''labels.png'')

Si quisiera hacer algo para que las etiquetas de los nodos fueran diferentes, podría enviar un dict como argumento. Así por ejemplo,

labeldict = {} labeldict["Node1"] = "shopkeeper" labeldict["Node2"] = "angry man with parrot" nx.draw(G,labels=labeldict, with_labels = True)

NetworkX es potente, pero estaba tratando de trazar un gráfico que muestra las etiquetas de los nodos de forma predeterminada y me sorprendió lo tediosa que esta tarea aparentemente simple podría ser para alguien nuevo en Networkx. Hay un ejemplo que muestra cómo agregar etiquetas a la trama.

https://networkx.github.io/documentation/latest/examples/drawing/labels_and_colors.html

El problema con este ejemplo es que utiliza demasiados pasos y métodos cuando lo único que quiero hacer es mostrar etiquetas que sean iguales al nombre del nodo al dibujar el gráfico.

# Add nodes and edges G.add_node("Node1") G.add_node("Node2") G.add_edge("Node1", "Node2") nx.draw(G) # Doesn''t draw labels. How to make it show labels Node1, Node2 along?

¿Hay alguna manera de hacer que nx.draw(G) muestre las etiquetas predeterminadas (Nodo1, Nodo2 en este caso) en línea en el gráfico?