Giới thiệu
Để thiết lập cùng một tỷ lệ (same scale) cho các subplot trong Python Matplotlib, bạn có thể sử dụng tham số sharex (hoặc sharey) khi tạo subplot thứ hai:
- Thiết lập kích thước hình vẽ và padding.
- Tạo figure mới.
- Thêm axes
ax1với nrows=2, ncols=1, index=1. - Thêm axes
ax2với nrows=2, ncols=1, index=2 và sharex=ax1 để chia sẻ trục X (cùng tỷ lệ). - Tạo dữ liệu
tđể vẽ sin và cos trên ax1 và ax2. - Hiển thị hình vẽ bằng show().
Ví dụ minh họa
import matplotlib.pyplot as plt import numpy as np # Thiết lập kích thước hình plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True # Tạo figure fig = plt.figure() # Thêm axes ax1 = fig.add_subplot(2, 1, 1) ax2 = fig.add_subplot(2, 1, 2, sharex=ax1) # Tạo dữ liệu t = np.linspace(-5, 5, 100) # Vẽ sin và cos trên ax1 và ax2 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()
Kết quả đầu ra
Hai subplot chia sẻ cùng trục X (cùng tỷ lệ và giới hạn):

