Matplotlib - Biến đổi
Gói matplotlib được xây dựng dựa trên khung chuyển đổi để dễ dàng di chuyển giữa các hệ tọa độ. Bốn hệ tọa độ có thể được sử dụng. Các hệ thống được mô tả ngắn gọn trong bảng dưới đây:
Danh từ: Tọa độ | Đối tượng chuyển đổi | Sự miêu tả |
---|---|---|
Dữ liệu | ax.transData | Hệ tọa độ dữ liệu đất đai của người sử dụng. được điều khiển bởi xlim và ylim |
Axes | ax.transAxes | Hệ trục tọa độ. (0,0) ở dưới cùng bên trái và (1,1) ở trên cùng bên phải của các trục. |
Nhân vật | fig.transFigure | Hệ tọa độ của Hình. (0,0) ở dưới cùng bên trái và (1,1) ở trên cùng bên phải của hình |
trưng bày | không ai | Đây là hệ tọa độ pixel của màn hình. (0,0) là góc dưới bên trái và (chiều rộng, chiều cao) là góc trên bên phải của màn hình tính bằng pixel. Ngoài ra, (matplotlib.transforms.IdentityTransform ()) có thể được sử dụng thay vì Không có. |
Hãy xem xét ví dụ sau:
axes.text(x,y,"my label")
Văn bản được đặt ở vị trí lý thuyết của một điểm dữ liệu (x, y). Vì vậy, chúng tôi sẽ nói về "coords dữ liệu".
Sử dụng các đối tượng biến đổi khác, vị trí có thể được kiểm soát. Ví dụ, nếu bài kiểm tra trên được đặt ở tâm của hệ tọa độ trục, hãy thực hiện dòng mã sau:
axes.text(0.5, 0.5, "middle of graph", transform=axes.transAxes)
Các phép biến đổi này có thể được sử dụng cho bất kỳ loại đối tượng Matplotlib nào. Chuyển đổi mặc định choax.text Là ax.transData và chuyển đổi mặc định cho fig.text Là fig.transFigure.
Hệ tọa độ trục cực kỳ hữu ích khi đặt văn bản theo trục của bạn. Bạn có thể thường muốn một bong bóng văn bản ở một vị trí cố định; ví dụ: ở phía trên bên trái của ngăn trục và giữ vị trí đó cố định khi bạn xoay hoặc thu phóng.