我做了这个颜色条:
import matplotlib.pyplot as plt
import matplotlib as mpl
fig, ax = plt.subplots(figsize=(6, 1))
fig.subplots_adjust(bottom=0.5)
cmap = mpl.cm.viridis
norm = mpl.colors.Normalize(vmin=0, vmax=1)
cb1 = mpl.colorbar.ColorbarBase(ax, cmap=cmap,
norm=norm,
orientation='horizontal')
cb1.set_label('Some Units')
fig.show()
但我正在尝试使用 plt.contourf 将此颜色条应用于此随机变量的颜色图(我需要将 plt.contourf 用于我的实际数据集,所以我不能使用 plt.imshow。我知道 plt.imshow 的颜色图正确,但是在这种情况下,我不能使用 plt.imshow)。
data = np.random.rand(100,200,144)
x = plt.contourf(data[-1],cmap=cmap,norm=norm)
plt.colorbar(x)
plt.show()
为什么颜色条不是从 0 到 1 而是从 0 到 1.05 的间隔?如何复制创建的颜色条 (cb1) 以将其应用于数据?


