ในการแทรกแถบมาตราส่วนในแผนที่ใน matplotlib เราสามารถใช้ AnchoredBar() คลาสเพื่อสร้างอินสแตนซ์ของวัตถุมาตราส่วน
ขั้นตอน
-
กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
-
สร้างข้อมูลแบบสุ่มโดยใช้ numpy
-
ใช้ imshow() วิธีการแสดงข้อมูลเป็นภาพ เช่น บนแรสเตอร์ปกติ 2 มิติ
-
รับแกนปัจจุบันโดยใช้ 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 Meter", 9) ax.add_artist(scalebar) ax.axis('off') plt.show()
ผลลัพธ์