如何向 Matplotlib 中的 imshow() 添加图例?
要在 Matplotlib 中向 imshow() 添加图例,我们可以执行以下步骤:
- 设置图形大小并调整各个子图之间的和周围的边距。
- 使用 numpy 创建随机数据。
- 初始化颜色图。
- 从第 2 步获取样本数据中的唯一数据点。
- 绘制每种颜色,使用不同的标签和颜色,以放在图例上。
- 在框内放置一个图例,位于右上角。
- 要显示图形,请使用 show() 方法。
示例
import numpy as np from matplotlib import pyplot as plt, cm plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True data = np.random.rand(3, 3) cmap = cm.YlOrBr unique_data = np.unique(data) i = 0 for entry in unique_data: mycolor = cmap(entry * 255 / (max(unique_data) - min(unique_data))) plt.plot(0, 0, "-", color=mycolor, label="%d"%i) i += 1 plt.imshow(data, cmap=cmap) plt.legend(loc="upper right", bbox_to_anchor=(1.25, 1.0)) plt.show()
输出
广告