Jak rysować prostokąty w matplotlib (z przykładami)


Aby narysować prostokąt w Matplotlib, możesz użyć funkcji matplotlib.patches.Rectangle , która wykorzystuje następującą składnię:

matplotlib.patches.Rectangle(xy, szerokość, wysokość, kąt=0,0)

Złoto:

  • xy: Współrzędne (x, y) punktu zakotwiczenia prostokąta
  • szerokość: szerokość prostokąta
  • wysokość: wysokość prostokąta
  • kąt: Obrót w stopniach w kierunku przeciwnym do ruchu wskazówek zegara wokół xy (domyślnie jest to 0)

W tym samouczku przedstawiono kilka przykładów praktycznego wykorzystania tej funkcji.

Przykład 1: narysuj prostokąt na ścieżce

Poniższy kod pokazuje, jak narysować prostokąt na wykresie Matplotlib o szerokości 2 i wysokości 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 () 

Prostokąt w Matplotlib

Przykład 2: stylizuj prostokąt

Poniższy kod pokazuje, jak nadać styl prostokątowi:

 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 () 

Niestandardowy prostokąt ze stylem w Matplotlib

Pełną listę właściwości stylu, które możesz zastosować do prostokąta, znajdziesz tutaj .

Przykład 3: narysuj prostokąt na obrazku

Poniższy kod pokazuje, jak narysować prostokąt na obrazie w Matplotilb. Zauważ, że obraz użyty w tym przykładzie pochodzi z tego samouczka Matplotlib .

Aby odtworzyć ten przykład, po prostu pobierz zdjęcie pinezki z tego samouczka i zapisz je na swoim komputerze.

 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 ))

Narysuj prostokąt, który sobie wyobrażamy w matplotlib

Zauważ, że możemy użyć argumentu kąta , aby obrócić prostokąt o określoną liczbę stopni w kierunku przeciwnym do ruchu wskazówek zegara:

 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 )) 

Prostokąt obrócony na obrazie w Matplotlib

Powiązane: Jak rysować okręgi w Matplotlib (z przykładami)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *