У меня есть массив целочисленных значений 2000x2000, равный +1 или -1.Этот массив имеет некоторую вероятность того, что одно из его значений координат изменится с коэффициентом -1 с каждым шагом по времени.Я уже запустил это моделирование и сохранил результаты в виде списка координат, которые равны (x_i, y_i), если изменение произошло при некотором x_i y_i, или равны пустому кортежу (), если изменение не произошло виндекс времени я.
Я пытаюсь анимировать, как массив изменяется со временем.Поскольку это большое изображение с миллионами временных шагов, я должен эффективно его анимировать.
пусть дельты будут списком координат, а состояние - массивом 2000x2000 с -1 или +1 целым числом.Я попытался анимировать это из следующего кода, приведенного ниже, но мой код на python завершается, прежде чем он может завершиться, вероятно потому, что он потребляет слишком много энергии.
fig = plt.figure()
ims = []
for coor in deltas:
if coor == ():
# No change, just plot the image
im = plt.imshow(init_state, animated=True)
else:
# Change occurred at coor. Multiply by -1 and plot
init_state[coor] *= -1
im = plt.imshow(init_state, animated=True)
ims.append([im])
# Function is killed before it finishes looping
ani = animation.ArtistAnimation(fig, ims, interval=50, blit=True,
repeat_delay=1000)
Единственное сообщение на моем терминале -
"Killed"
до завершения цикла for.
Есть ли способ создать анимацию, просто описав, как базовое изображение изменяется во времени, без необходимости предварительно вычислять и сохранятьсначала каждый отдельный кадр?
Любая помощь очень ценится.