Отображение текущего значения шага по времени на анимационном графике - PullRequest
0 голосов
/ 30 января 2020

Я пытаюсь сгенерировать анимацию своего решения, и я хочу видеть текущий временной шаг в позиции заголовка фигуры:

import matplotlib.pyplot as plt
import matplotlib.animation as animation
import matplotlib.tri as mtri

from mpl_toolkits.axes_grid1 import make_axes_locatable

z = data['value']
triang = mtri.Triangulation(x, y, t.transpose())
fig_s, ax_s = plt.subplots()
ax_s.set_aspect('equal', 'box')
# ax_s.set_axis_off()
fig_s.tight_layout()
divider = make_axes_locatable(ax_s)
cax = divider.append_axes("right", size="5%", pad=0.05)
min_z = np.min(z)
max_z = np.max(z)

for i in range(number_of_timesteps):
    c = ax_s.tricontourf(triang, z[:, i], 10, cmap='plasma')
    c.set_clim(min_z, max_z)
    plt.title('time step = ' + str(i))
    plt.colorbar(c, cax=cax)
    img.append(c.collections)
    # plt.clf()
anim_img = animation.ArtistAnimation(fig_s, img, interval=nt)
anim_img.save(name, writer='imagemagick', bitrate=300)

Так, как я уже сказал, в позиции заголовка графика, Я хотел бы видеть текущий шаг итерации, но в выходном файле я вижу только сообщение stati c, например, "time step = 50", т.е. последний шаг по времени в моем случае, и он не изменяется в течение всей анимации. Использование plt.clf () не помогло, так как в этом случае я получаю пустой файл.

...