1

我正在尝试使用 pyplot/artistanimation 绘制多个动画。我想同时绘制它们,但它似乎只绘制最后一个矩阵,而另外两个子图是空的。A、B 和 C 是在 update_grids 步骤创建的相当大的矩阵(绝对可以正常工作) - 它们在每次迭代时更新。因此,最终的图应该是一个包含 3 个子图的图,其中的动画(元胞自动机网格)显示了所有 3 个矩阵的同时更新。

images = []
fig = plt.figure()
ax1 = fig.add_subplot(2,2,1)
ax2 = fig.add_subplot(2,2,2)
ax3 = fig.add_subplot(2,2,3)
for a in range(t):
    A,B,C,AD,BD,CD,af,bf,cf = update_grids(A,B,C,AD,BD,CD,size,b)
    ax1 = plt.imshow(A,interpolation='nearest',cmap='binary')
    ax2 = plt.imshow(B,interpolation='nearest',cmap='binary')
    ax3 = plt.imshow(C,interpolation='nearest',cmap='binary')
    images.append([ax1,ax2,ax3])
    a_freq.append(af/(np.sum(A)+np.sum(B)+np.sum(C)))
    b_freq.append(bf/(np.sum(A)+np.sum(B)+np.sum(C)))
    c_freq.append(cf/(np.sum(A)+np.sum(B)+np.sum(C)))
ani = anm.ArtistAnimation(fig,images,interval=250,repeat=False,blit=False)
plt.show()
4

0 回答 0