#python #matplotlib
#python #matplotlib
Вопрос:
итак, я следую руководству по построению графиков значений, которые изменяются с регулярными интервалами (текущие данные)… Я использую matplotlib и использую FuncAnimation… Я импортировал все необходимые модули, но ответа нет… вот что я сделал и вывод
x = []
y = []
c = count()
def anim(i):
x.append(next(c))
y.append(random.randint(0,10))
plt.cla()
plt.plot(x,y,'or',markersize=10)
ani = FuncAnimation(plt.gcf(),anim,interval=5000)
вывод:
<Figure size 432x288 with 0 Axes>
Комментарии:
1. Может быть, попробуйте добавить
plt.show()
в конец кода?2. пробовал … тот же результат
Ответ №1:
В этом разделе объясняется базовая структура анимации.
- Настройте объекты, которые будут рисовать график. (Строка 5)
- Установите значение Y, которое вы хотите анимировать с помощью функции анимации (def anim()).
- Затем обновите значение объекта graph, заданное в # 1
- Установите количество раз для рисования, интервал между отрисовками, невозможность повторения и т.д. с
Funcanimation()
.
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
import numpy as np
fig, ax = plt.subplots()
im, = ax.plot([], [], 'or', markersize=10)
x = np.arange(10)
ax.set_xlim(0, 9)
ax.set_ylim(0, 1)
def anim(i):
y = np.random.rand(10)
im.set_data(x, y)
anim = FuncAnimation(fig, anim, frames=50, interval=200, repeat=False, blit=False)
fig.show()