我正在使用<代码>matplotlib.pyplot,对一些阵列数据进行校正。 数据的形式是密集地图,因此,我有一小数的x和 y地点,并且与这些地点有关。
困难在于,我无法简单地更新强度数据,因为x和 y地点也发生了变化。
例如,我可以像这项工作那样做一些事情,但首先需要一个超定的x和 y 格网,涵盖整个范围:
cax = ax.pcolormesh(x, y, G[:-1, :-1, 0],
vmin=-1, vmax=1, cmap= Blues )
fig.colorbar(cax)
def animate(i):
cax.set_array(G[:-1, :-1, i].flatten())
这一工作已经完成,但我最后用相当庞大的强度阵列填充了大部分零。
我发现了一个例子:here,允许改变x和数值。 这里是经过修改的MWE:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
fig2 = plt.figure()
x = np.arange(-9, 10)
y = np.arange(-9, 10).reshape(-1, 1)
base = np.hypot(x, y)
ims = []
for add in np.arange(15):
x = np.arange(-9+add, 10+add)
y = np.arange(-9+add, 10+add)
x, y = np.meshgrid(x, y)
ims.append((plt.pcolormesh(x, y, base + add, norm=plt.Normalize(0, 30)),))
im_ani = animation.ArtistAnimation(fig2, ims, interval=50, repeat_delay=3000,
blit=True)
plt.show()
这里的问题有两个方面。 首先,我有大约3 000个框架,因此名单<代码>ims不可管理。 第二,我如何能够获得数据,在框架之间加以澄清,而不是一劳永逸地显示每个框架? 也许有更好的办法?
博恩斯:使用激光器可以替代im。 I ve 曾使用Slider
, 涉及这些类型的数据,但只是首先使用巨大的x和 y grid。
得到帮助! 如果我不使用适当的标签,则道歉。