如何在Matplotlib中插入比例尺来表示地图尺寸?
为了在Matplotlib中插入比例尺以表示地图尺寸,我们可以使用 AnchoredBar() 类来实例化比例尺对象。
步骤
- 设置图像大小并调整子图间和周围的填充。
-
使用numpy创建随机数据。
-
使用 imshow() 方法将数据显示为图像,即在2D规则光栅上显示。
-
使用 gca() 方法获取当前坐标轴。
-
画一个带有居中标签的水平比例尺。
-
将比例尺添加到当前坐标轴中。
-
关闭坐标轴。
-
使用 show() 方法显示图像。
示例
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米", 9)
ax.add_artist(scalebar)
ax.axis('off')
plt.show()