我正在使用增量图,因此,每当我在上一张图的顶部插入新边时,我都希望绘制当前图。
使用此代码,我一次只能生成一个图形,但是它们仅在迭代结束后才会显示。
import random
import time
import networkx as nx
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
%matplotlib notebook
#Generating some random edges
M = 10
N = 4
edges = []
for i in range(M):
s = random.randrange(N) + 1
t = random.randrange(N) + 1
edges.append((s,t))
G = nx.DiGraph()
G.add_nodes_from(range(1, 5))
plt.subplot(121)
plt.ion()
nx.draw(G, with_labels=True, font_weight='bold')
for edge in edges:
plt.figure()
G.add_edge(*edge)
nx.draw(G, with_labels=True, font_weight='bold')
time.sleep(1)
但是我真正想要的是看到在每次迭代中重绘图形,或者至少能够使用Matplotlib的交互模式将它们堆叠起来,以便我可以前进和后退。
我一直在搜索几天,发现了一些处理条形图,饼图等图形的示例,但是我指的图形是数据结构,而不是图表。