Hướng dẫn draw rectangle in python matplotlib - vẽ hình chữ nhật trong python matplotlib


Để vẽ một hình chữ nhật trong matplotlib, bạn có thể sử dụng hàm matplotlib.patches.rectangle, sử dụng cú pháp sau:

matplotlib.patches.rectangle (xy, chiều rộng, chiều cao, góc = 0,0)

where:

  • XY: tọa độ (x, y) cho điểm neo của hình chữ nhật The (x, y) coordinates for the anchor point of the rectangle
  • Chiều rộng: chiều rộng hình chữ nhật Rectangle width
  • Chiều cao: chiều cao hình chữ nhật Rectangle height
  • Góc: Xoay tính theo độ ngược chiều kim đồng hồ về XY (mặc định là 0) Rotation in degrees counter-clockwise about xy (Default is 0)

Hướng dẫn này cung cấp một số ví dụ về cách sử dụng chức năng này trong thực tế.

Ví dụ 1: Vẽ một hình chữ nhật trên lô

Mã sau đây cho thấy cách vẽ hình chữ nhật trên biểu đồ matplotlib có chiều rộng 2 và chiều cao là 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))

#display plot
plt.show()

Hướng dẫn draw rectangle in python matplotlib - vẽ hình chữ nhật trong python matplotlib

Ví dụ 2: Kiểu hình chữ nhật

Mã sau đây cho thấy cách áp dụng một số kiểu dáng cho hình chữ nhật:

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

#display plot
plt.show()

Hướng dẫn draw rectangle in python matplotlib - vẽ hình chữ nhật trong python matplotlib

Bạn có thể tìm thấy một danh sách đầy đủ các thuộc tính kiểu dáng mà bạn có thể áp dụng cho một hình chữ nhật ở đây.

Ví dụ 3: Vẽ hình chữ nhật trên hình ảnh

Mã sau đây cho thấy cách vẽ một hình chữ nhật trên một hình ảnh trong matplotilb. Lưu ý rằng hình ảnh được sử dụng trong ví dụ này xuất phát từ hướng dẫn matplotlib này.

Để sao chép ví dụ này, chỉ cần tải xuống ảnh của StinkBug từ hướng dẫn đó và lưu nó vào máy tính của riêng bạn.

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

Hướng dẫn draw rectangle in python matplotlib - vẽ hình chữ nhật trong python matplotlib

Lưu ý rằng chúng ta có thể sử dụng đối số góc & nbsp; để xoay hình chữ nhật một số độ nhất định ngược chiều kim đồng hồ:angle argument to rotate the rectangle a certain number of degrees counter-clockwise:

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

Hướng dẫn draw rectangle in python matplotlib - vẽ hình chữ nhật trong python matplotlib

Liên quan: & nbsp; Cách vẽ các vòng tròn trong matplotlib (với ví dụ) How to Plot Circles in Matplotlib (With Examples)