Создание составного пути

Beginner

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

Введение

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

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

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

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

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

Импорт необходимых библиотек

Начнем с импорта необходимых библиотек. Для создания графика нам нужна matplotlib.pyplot, для создания патчей - matplotlib.patches, для создания путей - matplotlib.path.Path и для создания массивов - numpy.

import matplotlib.pyplot as plt
from matplotlib.patches import PathPatch
from matplotlib.path import Path
import numpy as np

Создание вершин и кодов

Мы создадим вершины и коды для двух многоугольников, которые мы хотим объединить в составной путь. Мы будем использовать Path.MOVETO, чтобы переместить курсор в начальную точку многоугольника, Path.LINETO, чтобы создать линию от начальной точки до следующей точки, и Path.CLOSEPOLY, чтобы закрыть многоугольник.

vertices = []
codes = []

## Первый многоугольник - прямоугольник
codes = [Path.MOVETO] + [Path.LINETO]*3 + [Path.CLOSEPOLY]
vertices = [(1, 1), (1, 2), (2, 2), (2, 1), (0, 0)]

## Второй многоугольник - треугольник
codes += [Path.MOVETO] + [Path.LINETO]*2 + [Path.CLOSEPOLY]
vertices += [(4, 4), (5, 5), (5, 4), (0, 0)]

Создание пути

Мы будем использовать Path, чтобы создать путь из вершин и кодов, которые мы создали на предыдущем шаге.

path = Path(vertices, codes)

Создание PathPatch

Мы создадим PathPatch из пути, который мы создали на предыдущем шаге. Мы установим facecolor в 'none' и edgecolor в 'зеленый'.

pathpatch = PathPatch(path, facecolor='none', edgecolor='green')

Создание графика

Мы создадим график и добавим PathPatch на график. Мы установим заголовок графика в 'Составной путь'.

fig, ax = plt.subplots()
ax.add_patch(pathpatch)
ax.set_title('A Compound Path')

ax.autoscale_view()

plt.show()

Резюме

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