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

วิธีเพิ่ม 3D Subplot ให้กับ Figure ใน Matplotlib

ภาพรวม

สร้าง 3D plot ใน Matplotlib โดยเพิ่ม subplot ด้วย projection='3d' ต้อง import mpl_toolkits.mplot3d (อาจ implicit)

ขั้นตอนการทำงาน

  • Import matplotlib.pyplot และ numpy
  • กำหนดขนาดฟิกเกอร์
  • สร้างข้อมูล x, y, z (ตัวอย่าง: z = x² + y²)
  • สร้าง figure
  • เพิ่ม subplot: fig.add_subplot(111, projection='3d')
  • พลอตด้วย ax.plot(x, y, z)
  • แสดงผล

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

from matplotlib import pyplot as plt
import numpy as np

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
z = x ** 2 + y ** 2

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot(x, y, z, color='red', lw=7)

plt.show()

ผลลัพธ์

3D line plot แสดงโค้งโป้รบอลอยด์

วิธีเพิ่ม 3D Subplot ให้กับ Figure ใน Matplotlib

เคล็ดลับ 3D Plotting

  • ใช้ ax.plot_surface() สำหรับ surface plot
  • ใช้ ax.scatter3D() สำหรับ 3D scatter
  • ตั้งมุมมอง: ax.view_init(elev=30, azim=45)
  • เพิ่ม label: ax.set_xlabel('X'), ax.set_ylabel('Y'), ax.set_zlabel('Z')
  • สำหรับหลาย 3D subplots: fig.add_subplot(121, projection='3d'), fig.add_subplot(122, projection='3d')