เพื่อวาดสี่เหลี่ยมผืนผ้าอยู่ภายในวงกลมใน Matplotlib สามารถใช้คลาส Rectangle และ Circle จากโมดูล matplotlib.patches ได้
ขั้นตอน
- สร้าง Figure ใหม่หรือเปิดใช้งาน Figure ที่มีอยู่ด้วยเมธอด figure()
- เพิ่ม subplot ให้แกนปัจจุบัน
- สร้างอินสแตนซ์สี่เหลี่ยมผืนผ้าและวงกลมด้วยคลาส Rectangle() และ Circle()
- เพิ่มแพตช์ (patch) ลงในแกนด้วย add_patch()
- ปรับสเกลแกน X และ Y ด้วย xlim() และ ylim()
- ตั้งค่า aspect ratio ให้เท่ากันด้วย axis('equal')
- แสดงกราฟด้วยเมธอด show()
ตัวอย่างโค้ด
import matplotlib
from matplotlib import pyplot as plt, patches
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
fig = plt.figure()
ax = fig.add_subplot(111)
rect1 = patches.Rectangle((-2, -2), 4, 2, color='yellow')
circle1 = matplotlib.patches.Circle((0, 0), radius=3, color='red')
ax.add_patch(circle1)
ax.add_patch(rect1)
plt.xlim([-5, 5])
plt.ylim([-5, 5])
plt.axis('equal')
plt.show()
ผลลัพธ์
