我正在尝试为我的代码的以下最小示例获取一个颜色条。根据阴谋而不是imshow来映射一个颜色条
g1 = gridspec.GridSpec(1, 1)
f, ((ax0)) = plt.subplots(1, 1)
ax0 = subplot(g1[0])
cmap = matplotlib.cm.get_cmap('viridis')
for i in linspace(0,1,11):
x = [-1,0,1]
y = [i,i,i]
rgba = cmap(i)
im = ax0.plot(x,y,color=rgba)
f.colorbar(im)
我也试过f.colorbar(cmap)
也许很明显,但我得到的错误,如
'ListedColormap' object has no attribute 'autoscale_None'
在现实中,价值定义我是比较复杂的,但我认为这应该这样做招。我的数据是用plot绘制的,而不是imshow(我知道如何制作色彩地图)。
我找到了一种方法。将尽快更新。 – Nigu
有点迟疑,这是我在发布最初问题后的星期五发现的。 Z = [[0,0],[0,0]] levels = linspace(-1.5,5.5,11)#range(-1.4433333,5.5133333 + s,step) CS3 = plt.contourf(Z,levels ,cmap = mymap) plt.clf()'是我用来定义我的标量映射的基础,它基于我在SO上发现的另一篇文章。但是,这里提供的解决方案似乎更加直观并且更直接地解决问题。谢谢! – Nigu