2017-10-17 1 views
0

J'essaye d'ajuster la longueur du bord entre deux noeuds en suivant le code. Mais apparemment, ça n'a pas marché. Quelqu'un pourrait-il me guider là où je fais erreur: S'il vous plaît noter que je regarde déjà à ce fil (How to specify edge length in Networkx for calculating shortest distance?), mais n'a pas résolu mon problèmelongueur d'arête dans networkx

import networkx as nx 
import matplotlib.pyplot as plt 

G=nx.Graph() 
G.add_nodes_from([1,2]) 
G.add_edge(1,2, length = 10) # I also replaced length with len but no luck 
nx.draw(G,with_labels=True) 
plt.show() # display 
+0

Dans networkx, vous pouvez attacher tous les attributs que vous voulez au bord. Avez-vous reçu une exception lors de l'ajout de l'attribut 'longueur' ou quoi? –

+0

Vous dites "** Mais apparemment ça n'a pas fonctionné" "Comment avez-vous compris cela? – Alperen

Répondre

1

Que diriez-vous ceci:

import networkx as nx 
import matplotlib.pyplot as plt 

G = nx.Graph() 
G.add_nodes_from([1,2]) 
G.add_edge(1,2, length = 10) 
pos = nx.spring_layout(G) 
nx.draw(G, pos) 
nx.draw_networkx_edge_labels(G, pos) 
plt.show() 

Il regardera comme ceci:

enter image description here

vous pouvez également jouer avec les paramètres de draw_networkx_edge_labels pour imprimer exactement ce que vous vouloir.

+0

Merci @ nutmeg64 – user2293224