Matplotlib 我怎么知道plt.colorbar必须;吃;ax.P颜色?
考虑以下代码:Matplotlib 我怎么知道plt.colorbar必须;吃;ax.P颜色?,matplotlib,Matplotlib,考虑以下代码: #%% Z=np.random.rand(len(X),len(Y)) X=np.arange(0,10) Y=np.arange(0,10) [fig1,ax1]=plt.subplots() pcm=ax1.pcolor(X,Y,Z,cmap='seismic',edgecolors='black') plt.colorbar(pcm,extend='max') #[fig1,ax1]=plt.subplots() #ax1.pcolor(X,Y,Z,cmap='seis
#%%
Z=np.random.rand(len(X),len(Y))
X=np.arange(0,10)
Y=np.arange(0,10)
[fig1,ax1]=plt.subplots()
pcm=ax1.pcolor(X,Y,Z,cmap='seismic',edgecolors='black')
plt.colorbar(pcm,extend='max')
#[fig1,ax1]=plt.subplots()
#ax1.pcolor(X,Y,Z,cmap='seismic',edgecolors='black')
#plt.colorbar(extend='max')
未注释部分有效,而注释部分无效。返回的错误为:
运行时错误:找不到可用于创建颜色栏的映射。首先定义一个可映射的对象,例如图像(使用imshow)或轮廓集(使用contourf)
看,据说:
matplotlib.cm.ScalarMapable(即图像、轮廓集等)
由这个颜色条描述。此参数对于
Figure.colorbar方法,但pyplot.colorbar函数是可选的,
它将默认设置为当前图像
在这种情况下,pcm对应于ax1.pcolor()的返回值,其类型为“matplotlib.collections.Collection”,并且不会出现在文档给出的(非详尽的)列表中
我如何从文档中知道我确实需要提供给plt.colorbar ax1.pcolor?我从一个邮筒里知道这件事。我怎么能从阅读文档中猜到这一点呢?因为
pcolor
不太常用(大多数人都使用pcolormesh
。但是matplotlib中的文档是由志愿者编写的,因此如果您有改进建议,我肯定欢迎PR。@JodyKlymak您好。感谢您的评论。即使是pcolormesh,也不清楚我们是否应该提供pcolormesh返回colorbar的内容。因此,最后我想答案是肯定的文档不完整。同样,欢迎您提出改进建议。但是,在您链接的文档下方有一个包含10多个示例的列表,其中显示了使用。。。