Để xác định độ dài (tính bằng pixel) của một đơn vị dữ liệu trên trục x và y trong Matplotlib, bạn có thể sử dụng transform transData.
- Thiết lập kích thước hình vẽ và khoảng đệm.
- Tạo dữ liệu x, y bằng NumPy.
- Tạo hình vẽ và thêm subplot.
- Vẽ dữ liệu.
- Sử dụng
ax.transData.transform()để chuyển đổi tọa độ dữ liệu sang pixel. - In ra độ dài ngang và dọc của một đơn vị.
- Hiển thị hình vẽ.
Ví dụ minh họa
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
x = np.arange(0, 10, 0.005)
y = np.exp(-x / 2.) * np.sin(2 * np.pi * x)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, y)
xy = ax.transData.transform([(0, 1), (1, 0)]) - ax.transData.transform((0, 0))
print("Vertical length:", xy[0][1])
print("Horizontal length:", xy[1][0])
plt.show()
Kết quả đầu ra

Ngoài đồ thị, console sẽ in ra:
Vertical length: 269.5 Horizontal length: 581.25