Текстура штриховки в Matplotlib для графиков

Beginner

This tutorial is from open-source community. Access the source code

Введение

В этом практическом занятии вы научитесь использовать штриховки в Python Matplotlib для добавления текстура к вашим графикам. Штриховки - это шаблоны, которые используются для заполнения области графика. Вы можете использовать штриховки, чтобы различать разные части вашего графика или добавить визуальный интерес к нему.

Советы по работе с ВМ

После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импорт библиотек

Для начала вам нужно импортировать необходимые библиотеки. В данном случае мы будем использовать Matplotlib и NumPy. NumPy - это библиотека для языка программирования Python, которая добавляет поддержку больших многомерных массивов и матриц, а также большое количество высокоуровневых математических функций для работы с этими массивами.

import matplotlib.pyplot as plt
import numpy as np

Создание данных

Далее вам нужно создать некоторые данные для использования в вашем графике. В данном случае мы создадим два массива с использованием библиотеки NumPy.

x = np.arange(1, 5)
y1 = np.arange(1, 5)
y2 = np.ones(y1.shape) * 4

Создание столбчатой диаграммы с штриховкой

Теперь, когда у вас есть данные, вы можете создать столбчатую диаграмму с штриховкой. Вы можете использовать штриховку, чтобы создать шаблоны на столбцах в вашем графике. В данном случае мы будем использовать параметр hatch, чтобы добавить штриховку к нашим столбцам.

plt.bar(x, y1, edgecolor='black', hatch="/")
plt.bar(x, y2, bottom=y1, edgecolor='black', hatch='//')

Создание столбчатой диаграммы с несколькими видами штриховки

Вы также можете использовать несколько видов штриховки в своей столбчатой диаграмме. В данном случае мы будем использовать массив штриховок, чтобы создать несколько видов штриховки на наших столбцах.

plt.bar(x, y1, edgecolor='black', hatch=['--', '+', 'x', '\\'])
plt.bar(x, y2, bottom=y1, edgecolor='black', hatch=['*', 'o', 'O', '.'])

Создание графика с заштрихованными участками

Вы также можете использовать штриховку для участков в своем графике. В данном случае мы будем использовать функцию fill_between, чтобы создать заштрихованный участок.

x = np.arange(0, 40, 0.2)
plt.fill_between(x, np.sin(x) * 4 + 30, y2=0, hatch='///', zorder=2, fc='c')

Добавление заштрихованного эллипса

Вы также можете добавить заштрихованные участки в свой график. В данном случае мы будем использовать функцию add_patch, чтобы добавить эллиптический участок в наш график.

plt.gca().add_patch(Ellipse((4, 50), 10, 10, fill=True, hatch='*', facecolor='y'))

Добавление заштрихованного многоугольника

Вы также можете добавить заштрихованный многоугольник. В данном случае мы будем использовать функцию add_patch, чтобы добавить многоугольный участок в наш график.

plt.gca().add_patch(Polygon([(10, 20), (30, 50), (50, 10)], hatch='\\/...', facecolor='g'))

Установка пределов и соотношения сторон графика

Наконец, вы можете установить пределы и соотношение сторон вашего графика, чтобы убедиться, что он выглядит как вы хотите.

plt.xlim([0, 40])
plt.ylim([10, 60])
plt.gca().set_aspect(1)

Резюме

В этом практическом занятии вы узнали, как использовать штриховку в Python Matplotlib для добавления текстура в ваши графики. Вы узнали, как создать столбчатую диаграмму с штриховкой, столбчатую диаграмму с несколькими штриховками, график с заштрихованными участками, эллиптический участок с штриховкой, многоугольный участок с штриховкой, а также как установить пределы и соотношение сторон вашего графика.