Как рисовать прямоугольники в matplotlib (с примерами)


Чтобы нарисовать прямоугольник в Matplotlib, вы можете использовать функцию matplotlib.patches.Rectangle , которая использует следующий синтаксис:

matplotlib.patches.Rectangle(xy, ширина, высота, угол = 0,0)

Золото:

  • xy: координаты (x, y) опорной точки прямоугольника.
  • ширина: ширина прямоугольника
  • height: высота прямоугольника
  • угол: вращение в градусах против часовой стрелки вокруг xy (по умолчанию 0).

В этом руководстве представлено несколько примеров практического использования этой функции.

Пример 1: нарисуйте прямоугольник на пути

Следующий код показывает, как нарисовать прямоугольник на графике Matplotlib шириной 2 и высотой 6:

 import matplotlib. pyplot as plt
from matplotlib. patches import Rectangle

#define Matplotlib figure and axis
fig, ax = plt. subplots ()

#create simple line plot
ax. plot ([0, 10],[0, 10])

#add rectangle to plot
ax. add_patch (Rectangle((1, 1), 2, 6))

#displayplot
plt. show () 

Прямоугольник в matplotlib

Пример 2: стилизация прямоугольника

Следующий код показывает, как стилизовать прямоугольник:

 import matplotlib. pyplot as plt
from matplotlib. patches import Rectangle

#define Matplotlib figure and axis
fig, ax = plt. subplots ()

#create simple line plot
ax. plot ([0, 10],[0, 10])

#add rectangle to plot
ax. add_patch (Rectangle((1, 1), 2, 6,
             edgecolor = ' pink ',
             facecolor = ' blue ',
             fill= True ,
             lw= 5 ))

#displayplot
plt. show () 

Пользовательский прямоугольник со стилем в Matplotlib

Полный список свойств стиля, которые можно применить к прямоугольнику, можно найти здесь .

Пример 3: нарисуйте прямоугольник на изображении

Следующий код показывает, как нарисовать прямоугольник на изображении в Matplotilb. Обратите внимание, что изображение, используемое в этом примере, взято из этого руководства по Matplotlib .

Чтобы воспроизвести этот пример, просто загрузите фотографию канцелярской кнопки из этого урока и сохраните ее на своем компьютере.

 import matplotlib. pyplot as plt
from matplotlib. patches import Rectangle
from PIL import Image

#display the image
plt. imshow ( Image.open (' stinkbug.png '))

#add rectangle
plt. gca (). add_patch (Rectangle((50,100),40,80,
                    edgecolor=' red ',
                    facecolor=' none ',
                    lw= 4 ))

Нарисуйте прямоугольник, который мы представляем в matplotlib.

Обратите внимание, что мы можем использовать аргумент угла для поворота прямоугольника на определенное количество градусов против часовой стрелки:

 import matplotlib. pyplot as plt
from matplotlib. patches import Rectangle
from PIL import Image

#display the image
plt. imshow ( Image.open (' stinkbug.png '))

#add rectangle
plt. gca (). add_patch (Rectangle((50,100),40,80,
                    angle= 30 ,
                    edgecolor=' red ',
                    facecolor=' none ',
                    lw= 4 )) 

Прямоугольник повернут на изображении в Matplotlib

Связанный: Как построить круги в Matplotlib (с примерами)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *