Мне нужно сделать график и обновить его много раз (100 или 1000), поэтому мне нужно Python, чтобы обновить его очень быстро. Я нашел замечательное решение , но мне не разрешено добавлять комментарий.
Вот код упомянутого ответа:
import time
import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
line, = ax.plot(np.random.randn(100))
fig.canvas.draw()
plt.show(block=False)
tstart = time.time()
num_plots = 0
while time.time()-tstart < 5:
line.set_ydata(np.random.randn(100))
ax.draw_artist(ax.patch)
ax.draw_artist(line)
fig.canvas.blit(ax.bbox)
fig.canvas.flush_events()
num_plots += 1
print(num_plots/5)
Чтобы получить свое идеальное решение Мне также нужно обновить заголовок сюжета помимо строк. Например, я хотел бы напечатать номер итерации (или какой-либо счетчик для l oop) в заголовке рисунка.
Как это сделать?
Я попытался обновить заголовок фигуры внутри while l oop, но заголовок печатает первое значение num_plots, а затем последнее, ничего между ними. В частности, я добавил
ax.set_title('num_plots = ' + str(num_plots))
в качестве последней строки внутри while l oop, и это приводит к такому поведению, при котором вы можете видеть, что заголовок обновляется только в конце l oop (даже если инструкция находится внутри него): нажмите здесь, чтобы увидеть анимированный gif