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多个示例的列表,其中显示了使用。。。