Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để chèn một thanh tỷ lệ vào bản đồ trong Matplotlib?

Để chèn thanh tỷ lệ vào bản đồ trong matplotlib, chúng tôi có thể sử dụng AnchoredBar () lớp để khởi tạo đối tượng thanh tỷ lệ.

Các bước

  • Đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô con.

  • Tạo dữ liệu ngẫu nhiên bằng cách sử dụng numpy.

  • Sử dụng imshow () phương pháp hiển thị dữ liệu dưới dạng hình ảnh, tức là trên raster 2D thông thường.

  • Lấy trục hiện tại bằng cách sử dụng gca () phương pháp.

  • Vẽ thanh tỷ lệ ngang với nhãn căn giữa bên dưới.

  • Thêm nghệ sĩ thanh tỷ lệ vào trục hiện tại.

  • Tắt các trục.

  • Để hiển thị hình này, hãy sử dụng show () mthod.

Ví dụ

from matplotlib import pyplot as plt
from mpl_toolkits.axes_grid1.anchored_artists import AnchoredSizeBar
import numpy as np

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

data = np.random.rand(5, 5)

img = plt.imshow(data, cmap="YlGnBu")
ax = plt.gca()
scalebar = AnchoredSizeBar(ax.transData, 1, "1 Meter", 9)

ax.add_artist(scalebar)
ax.axis('off')
plt.show()

Đầu ra

Làm cách nào để chèn một thanh tỷ lệ vào bản đồ trong Matplotlib?