sparkandshine sparkandshine - 9 months ago 91
Python Question

How do I customize the display of edge labels in networkx?

I create a graph with edge attributions (say

, such as,

How do display edge labels only with the values,
instead of

enter image description here

Related source codes are below:

# build a graph
G.add_edge(u, v, r=value)

# plot the graph
pos = nx.spring_layout(G, scale=2)

nx.draw(G, pos)

edge_labels = nx.get_edge_attributes(G,'r')
nx.draw_networkx_edge_labels(G, pos, labels = edge_labels)


Answer Source

The command draw_networkx_edge_labels needs the argument edge_labels rather than `labels.

So you need to change nx.draw_networkx_edge_labels(G, pos, labels = edge_labels) to nx.draw_networkx_edge_labels(G, pos, edge_labels = edge_labels)