colorbar与我在图像上放置的contourf-plot具有相同的透明度。
我可以通过在最低的" zorder" -location添加一个没有透明度的伪造的contourf图来实现一个不透明的颜色条,但我想有一个正确的方法?
这给了我一个半透明的颜色条:
cs = m.contourf(xv,yv,zi,zorder=4,alpha=0.7,origin="lower")
cbar = m.colorbar(cs,location='right',pad="5%")
答案 0 :(得分:4)
你可以做到,但没有特别的方法专门用于此。 (也许应该有。)相反,您可以手动修改alpha
的{{1}}值。
例如,让我们演示一般问题:
cbar.solids
然后,如果我们改变import numpy as np
import matplotlib.pyplot as plt
data = np.random.random((10,10))
fig, ax = plt.subplots()
im = ax.imshow(data, cmap='gist_earth', alpha=0.5)
cbar = fig.colorbar(im)
plt.show()
的透明度:
cbar.solids
在旁注中,如果您使用的是透明的import numpy as np
import matplotlib.pyplot as plt
data = np.random.random((10,10))
fig, ax = plt.subplots()
im = ax.imshow(data, cmap='gist_earth', alpha=0.5)
cbar = fig.colorbar(im)
cbar.solids.set(alpha=1)
plt.show()
而不是contour
,则可能需要修改所有contourf
的{{1}}值,如好。