Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีสร้าง Quiver Plot (เวกเตอร์ฟิลด์) ด้วย Matplotlib ใน Python

บทนำ

Quiver Plot แสดงเวกเตอร์ความเร็ว (velocity vectors) ที่จุด (x,y) ด้วยองค์ประกอบ (u,v) ใช้ในฟิสิกส์/วิศวกรรม

คำสั่งพื้นฐาน

quiver(x, y, u, v, color)

ตัวอย่างโค้ด

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(0, 5.4, 0.5)
y = np.arange(0, 5.4, 0.5)
X, Y = np.meshgrid(x, y)
u = np.cos(X) * Y
v = np.sin(Y) * Y

fig, ax = plt.subplots(figsize=(12, 8))
ax.quiver(X, Y, u, v)
ax.xaxis.set_ticks([])
ax.yaxis.set_ticks([])
ax.axis([-0.7, 2.7, -0.7, 2.7])
ax.set_aspect('equal')
plt.show()

คำอธิบาย

  • สร้าง grid พิกัด X, Y

  • คำนวณส่วนประกอบเวกเตอร์ u, v จากฟังก์ชัน cos/sin

  • ใช้ ax.quiver พลอตลูกศรแสดงทิศทางและขนาด

  • ตั้งค่า aspect ratio เท่ากัน