ภาพรวม
เมื่อสร้างหลาย subplots แนวตั้ง มักต้องการให้แกน X ใช้ scale เดียวกัน (shared X-axis) เพื่อเปรียบเทียบง่าย ใช้พารามิเตอร์ sharex
ขั้นตอนการทำงาน
- กำหนดขนาดฟิกเกอร์
- สร้าง figure
- เพิ่ม subplot แรก
ax1 = fig.add_subplot(2, 1, 1) - เพิ่ม subplot ที่สอง
ax2 = fig.add_subplot(2, 1, 2, sharex=ax1) - พลอตข้อมูลบน ax1 และ ax2
- แสดงผล
ตัวอย่างโค้ด
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
fig = plt.figure()
ax1 = fig.add_subplot(2, 1, 1)
ax2 = fig.add_subplot(2, 1, 2, sharex=ax1)
t = np.linspace(-5, 5, 100)
ax1.plot(t, np.sin(2 * np.pi * t), color='red', lw=4)
ax2.plot(t, np.cos(2 * np.pi * t), color='orange', lw=4)
plt.show()
ผลลัพธ์
2 Subplots ซ้อนกัน แกน X ร่วมกัน (zoom/pan ตัวเดียวควบคุมทั้งคู่)

รูปแบบอื่นๆ
plt.subplots(2, 1, sharex=True)– สร้างพร้อมกัน sharex ทั้งคู่sharey=True– share แกน Y แทนsharex='col',sharey='row'– share ตามคอลัมน์/แถว- ใช้
fig.align_xlabels()ซ่อน tick labels ที่ซ้ำซ้อน