备注
前往结尾 下载完整示例代码。
颜色条刻度标签#
垂直色条在 y 轴上有刻度、刻度标签和标签,水平色条在 x 轴上。可以使用 ticks 参数来设置刻度,使用 format 参数来格式化可见色条轴的刻度标签。对于进一步的调整,可以使用色条的 ax 属性来获取其 yaxis 或 xaxis 轴。
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.ticker as mticker
# Fixing random state for reproducibility
rng = np.random.default_rng(seed=19680801)
绘制带有垂直(默认)颜色条的图
fig, ax = plt.subplots()
data = rng.standard_normal((250, 250))
cax = ax.imshow(data, vmin=-1, vmax=1, cmap='coolwarm')
ax.set_title('Gaussian noise with vertical colorbar')
# Add colorbar, make sure to specify tick locations to match desired ticklabels
cbar = fig.colorbar(cax,
ticks=[-1, 0, 1],
format=mticker.FixedFormatter(['< -1', '0', '> 1']),
extend='both'
)
labels = cbar.ax.get_yticklabels()
labels[0].set_verticalalignment('top')
labels[-1].set_verticalalignment('bottom')

绘制带有水平颜色条的图
fig, ax = plt.subplots()
data = np.clip(data, -1, 1)
cax = ax.imshow(data, cmap='afmhot')
ax.set_title('Gaussian noise with horizontal colorbar')
# Add colorbar and adjust ticks afterwards
cbar = fig.colorbar(cax, orientation='horizontal')
cbar.set_ticks(ticks=[-1, 0, 1], labels=['Low', 'Medium', 'High'])
plt.show()

参考文献
以下示例展示了以下函数、方法、类和模块的使用: