Введение
Этот туториал представляет пошаговое руководство по использованию интерфейса pyplot в Matplotlib. Модуль pyplot - это набор функций, которые делают Matplotlib похожим на MATLAB, позволяя легко создавать и настраивать графики. В этом туториале предполагается, что у вас есть базовое понимание Matplotlib и его концепций.
Советы по работе с ВМ
После завершения запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Генерация простого графика
Для начала давайте сгенерируем простой график с использованием функции plot из pyplot. В этом примере мы построим линейный график с y-значениями [1, 2, 3, 4]:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
Пояснение:
- Мы импортируем модуль
pyplotизmatplotlibи даем ему псевдонимplt. - Функция
plotиспользуется для генерации линейного графика. Передав список только с y-значениями, x-значения автоматически генерируются как[0, 1, 2, 3], так как в Python диапазоны начинаются с 0. - Функция
ylabelзадает метку для оси y. - Наконец, функция
showотображает график.
Форматирование стиля графика
Далее давайте настроим стиль нашего графика. Мы можем использовать необязательный третий аргумент функции plot для указания строки формата, которая определяет цвет и тип линии графика. Например, давайте построим тот же линейный график, но с красными кружочками:
plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()
Пояснение:
- Мы используем строку формата
'ro', чтобы указать, что график должен быть представлен красными кружочками. - Функция
axisиспользуется для настройки области просмотра осей, определяя диапазон значений для осей x и y.
Построение нескольких линий
Мы также можем построить несколько линий с разными стилями в одном вызове функции, используя массивы. Построим три линии: пунктирную красную линию, синие квадраты и зеленые треугольники:
import numpy as np
t = np.arange(0., 5., 0.2)
plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')
plt.show()
Пояснение:
- Мы используем модуль
numpyдля создания массиваtс равномерно отсчитанными значениями времени. - Функция
plotвызывается с тремя парами значенийxиy, за которыми следуют строки формата'r--'( пунктирная красная линия),'bs'(синие квадраты) и'g^'(зеленые треугольники).
Построение графиков с категориальными переменными
Matplotlib позволяет создавать графики с использованием категориальных переменных. Построим столбчатый график, точечный график и линейный график с категориальными переменными:
names = ['group_a', 'group_b', 'group_c']
values = [1, 10, 100]
plt.figure(figsize=(9, 3))
plt.subplot(131)
plt.bar(names, values)
plt.subplot(132)
plt.scatter(names, values)
plt.subplot(133)
plt.plot(names, values)
plt.suptitle('Categorical Plotting')
plt.show()
Пояснение:
- Мы создаем список
namesс тремя категориальными значениями и списокvalues, представляющий соответствующие им значения. - Функция
figureвызывается для создания новой фигуры с заданным размером. - Мы используем функцию
subplotдля создания сетки подграфиков. В этом примере мы создаем три подграфика, каждый с разным типом графика: столбчатый график, точечный график и линейный график. - Функция
suptitleиспользуется для установки надзаголовка фигуры.
Настройка свойств линии
Matplotlib позволяет настраивать различные свойства линии, такие как толщина линии, стиль пунктира и цвет. Рассмотрим способы настройки свойств линии:
x = np.arange(0, 5, 0.1)
line, = plt.plot(x, np.sin(x), '-')
## Использование сеттер-метода экземпляра Line2D
line.set_linewidth(2.0) ## Установка свойства толщины линии в 2.0
## Использование функции plt.setp
plt.setp(line, color='r', linewidth=2.0) ## Установка свойств цвета и толщины линии с использованием функции setp
plt.show()
Пояснение:
- Мы создаем массив
xи вычисляем соответствующие значения y с использованием функцииnp.sin. - Функция
plotвызывается для создания линейного графика. - Мы используем метод
setэкземпляраLine2Dдля установки свойства толщины линии в 2.0. - Альтернативно мы можем использовать функцию
setpдля установки нескольких свойств линии, таких как цвет и толщина линии, с использованием именованных аргументов.
Резюме
В этом уроке мы узнали, как использовать интерфейс pyplot в Matplotlib для создания и настройки графиков. Мы рассмотрели создание простых графиков, форматирование стиля графиков, построение нескольких линий, использование категориальных переменных и настройку свойств линии. Используя эти функциональные возможности, вы можете создавать различные виды графиков для эффективного визуализации ваших данных.