Animieren Sie das Zeichnen von networkx-Kanten

Ich habe ein networkx-Frühlingslayout, das eine Netzwerktopologie darstellt. Schlüsselknoten sind rot und die anderen blau. Die Routen zu den Schlüsselknotenkanten werden mit Bindestrichen angezeigt. Wie kann ich das Zeichnen der networkx-Kanten mit einem bestimmten Zeitintervall animieren?

#!/usr/bin/env python

import matplotlib.pyplot as plt
import networkx as nx
import matplotlib as mpl

G=nx.Graph()

G.add_edge('a','b',weight=0.6)
G.add_edge('a','c',weight=0.2)
G.add_edge('c','d',weight=0.1)
G.add_edge('c','e',weight=0.7)
G.add_edge('c','f',weight=0.9)
G.add_edge('a','d',weight=0.3)

elarge=[(u,v) for (u,v,d) in G.edges(data=True) if d['weight'] >0.5]
esmall=[(u,v) for (u,v,d) in G.edges(data=True) if d['weight'] <=0.5]

#specify an initial position that is not random e.g. use a circular layout
pos=nx.circular_layout(G)
pos=nx.spring_layout(G,dim=2,pos=pos) # positions for all nodes
#pos=nx.spring_layout(G) # positions for all nodes
print "Graph xy positions"
print  pos

# nodes
nx.draw_networkx_nodes(G,pos,node_size=700)

# edges
nx.draw_networkx_edges(G,pos,edgelist=elarge,
                width=6)
nx.draw_networkx_edges(G,pos,edgelist=esmall,
                width=6,alpha=0.5,edge_color='b',style='dashed')

# labels
nx.draw_networkx_labels(G,pos,font_size=20,font_family='sans-serif')

plt.xlim(-0.05,1.05)
plt.ylim(-0.05,1.05)
plt.axis('off')

Antworten auf die Frage(3)

Ihre Antwort auf die Frage