0
我想要做的事很簡單:對於使用plt.subplots()
創建的圖,我想顯示一個顏色條。顯示matplotlib流圖的子圖colorbar
所以,這是我做的:
def plotVF(self, u, v):
m = np.sqrt(np.power(u, 2) + np.power(v, 2))
xrange = np.linspace(0, u.shape[1], u.shape[1]);
yrange = np.linspace(0, u.shape[0], u.shape[0]);
x, y = np.meshgrid(xrange, yrange)
mag = np.hypot(u, v)
scale = 1
lw = scale * mag/mag.max()
f, ax = plt.subplots()
h = ax.streamplot(x, y, u, v, color=mag, linewidth=lw, density=3, arrowsize=1, norm=plt.Normalize(0, 70))
ax.set_xlim(0, u.shape[1])
ax.set_ylim(0, u.shape[0])
ax.set_xticks([])
ax.set_yticks([])
cbar = f.colorbar(h, ax=ax)
cbar.ax.tick_params(labelsize=5)
plt.show()
因此在docs所示的情況。 不過,我不斷收到:
AttributeError: 'StreamplotSet' object has no attribute 'autoscale_None'
這個例子只有一個情節,但我有一個以上的,這就是爲什麼我不直接使用plt.colorbar().
[如何將顏色條添加到matplotlib中的圖形]可能的重複(http://stackoverflow.com/questions/42387471/how-to-add-a-colorbar-to-a-figure-in-matplotlib ) – languitar