Введение
В этом руководстве вы узнаете, как создать анимированный линейный график с использованием библиотеки Python Matplotlib. Линейный график будет отображать синусоидальную волну с изменяющейся амплитудой в течение времени.
Советы по работе с ВМ
После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импортировать библиотеки
Первым шагом является импорт необходимых библиотек. Мы будем использовать Matplotlib для создания графика и NumPy для генерации данных.
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.animation as animation
Инициализировать фигуру и оси
Далее нам нужно инициализировать фигуру и оси для графика. Это можно сделать с помощью функции subplots() из Matplotlib.
fig, ax = plt.subplots()
Генерировать данные
На этом этапе мы сгенерируем данные для линейного графика. Мы будем использовать функцию arange() из NumPy для генерации массива значений для оси x и функцию sin() для генерации массива значений для оси y синусоидальной волны.
x = np.arange(0, 2*np.pi, 0.01)
line, = ax.plot(x, np.sin(x))
Определить функцию для анимации
Функция для анимации будет вызываться функцией FuncAnimation() и будет использоваться для обновления графика новыми данными. В этом примере мы будем обновлять значения оси y линейного графика синусоидой с изменяющейся амплитудой в течение времени.
def animate(i):
line.set_ydata(np.sin(x + i / 50)) ## update the data.
return line,
Создать объект анимации
Теперь мы можем создать объект анимации с использованием функции FuncAnimation(). Мы передадим в неё объект фигуры, функцию анимации, интервал обновления и количество кадров для сохранения.
ani = animation.FuncAnimation(
fig, animate, interval=20, blit=True, save_count=50)
Показать график
Наконец, мы можем показать график с использованием функции show() из Matplotlib.
plt.show()
Резюме
В этом уроке мы узнали, как создать анимированный линейный график с использованием библиотеки Python Matplotlib. Мы инициализировали фигуру и оси, сгенерировали данные, определили функцию анимации и создали объект анимации. Затем мы показали график с использованием функции show().