当使用带有等高线图的matplotlib时,我无法让颜色条按我的意愿显示。我已经阅读了许多类似的例子,但仍然无法得到我想要的。在下图中,我想要改变两件事。我希望在彩条上显示最小值和最大值(最大值应该是2.0,最小值应该是-0.1)。这两个值应该在颜色条的最边缘。另外,我希望颜色条在每次颜色转换时显示值。例如。在下图中,在2.1和1.8之间,还有另一个颜色过渡,其中没有显示值。谁能帮帮我?我想我可能需要使用norm,但到目前为止它对我没有用。谢谢,代码:importnumpyasnpimportmatplotlib.pyplotaspltxi=np.array([0.,0.5,1.0])
以下代码无法在Python2.5.4上运行:frommatplotlibimportpylabasplimportnumpyasnpdata=np.random.rand(6,6)fig=pl.figure(1)fig.clf()ax=fig.add_subplot(1,1,1)ax.imshow(data,interpolation='nearest',vmin=0.5,vmax=0.99)pl.colorbar()pl.show()错误信息是C:\temp>pythonz.pyTraceback(mostrecentcalllast):File"z.py",line10,inpl.
以下代码无法在Python2.5.4上运行:frommatplotlibimportpylabasplimportnumpyasnpdata=np.random.rand(6,6)fig=pl.figure(1)fig.clf()ax=fig.add_subplot(1,1,1)ax.imshow(data,interpolation='nearest',vmin=0.5,vmax=0.99)pl.colorbar()pl.show()错误信息是C:\temp>pythonz.pyTraceback(mostrecentcalllast):File"z.py",line10,inpl.
我使用matplotlib在python中绘制一些数据,并且这些绘图需要标准颜色条。数据由一系列包含频率信息的NxM矩阵组成,因此简单的imshow()图给出了带有颜色描述频率的2D直方图。每个矩阵包含不同但重叠范围的数据。Imshow将每个矩阵中的数据标准化为0-1范围,这意味着,例如,矩阵A的图将与矩阵2*A的图相同(尽管颜色条将显示两倍的值)。例如,我想要的是红色对应于所有图中的相同频率。换句话说,一个颜色条就足以满足所有图的需求。任何建议将不胜感激。 最佳答案 不是偷@ianilis的答案,但我想添加一个例子......有多
我使用matplotlib在python中绘制一些数据,并且这些绘图需要标准颜色条。数据由一系列包含频率信息的NxM矩阵组成,因此简单的imshow()图给出了带有颜色描述频率的2D直方图。每个矩阵包含不同但重叠范围的数据。Imshow将每个矩阵中的数据标准化为0-1范围,这意味着,例如,矩阵A的图将与矩阵2*A的图相同(尽管颜色条将显示两倍的值)。例如,我想要的是红色对应于所有图中的相同频率。换句话说,一个颜色条就足以满足所有图的需求。任何建议将不胜感激。 最佳答案 不是偷@ianilis的答案,但我想添加一个例子......有多
我需要你的帮助!我有一个绘图代码,如下所示:fig=plt.figure()ax1=fig.add_subplot(111)imax1=ax1.imshow(data,interpolation='nearest',origin='lower',cmap=cm.jet)#plotcbar=plt.colorbar(imax1,extend='neither',spacing='proportional',orientation='vertical',shrink=0.7,format="%.0f")cbar.set_label(r"ET[mm/month]",size=10)title
我需要你的帮助!我有一个绘图代码,如下所示:fig=plt.figure()ax1=fig.add_subplot(111)imax1=ax1.imshow(data,interpolation='nearest',origin='lower',cmap=cm.jet)#plotcbar=plt.colorbar(imax1,extend='neither',spacing='proportional',orientation='vertical',shrink=0.7,format="%.0f")cbar.set_label(r"ET[mm/month]",size=10)title
我正在尝试制作具有定义水平和对数范数的等高线图。下面是一个例子:importmatplotlib.pyplotaspltimportnumpyasnpfrommatplotlib.colorsimportLogNormdelta=0.025x=y=np.arange(0,3.01,delta)X,Y=np.meshgrid(x,y)Z1=plt.mlab.bivariate_normal(X,Y,1.0,1.0,0.0,0.0)Z2=plt.mlab.bivariate_normal(X,Y,1.5,0.5,1,1)Z=10*(Z1*Z2)fig=plt.figure()ax1=fig
我有一个带有自动生成的正负值的颜色条(我没有设置它们)。不幸的是,减号破坏了文本的垂直对齐方式。我如何才能将刻度标签中的所有文本向右对齐,或者在我的正数之前插入一个空格以使其看起来不错? 最佳答案 您可以更改文本的对齐方式。可能需要稍微更改标签的(x)位置以防止与颜色条本身重叠。a=np.random.randn(10,10)fig,ax=plt.subplots()im=ax.imshow(a,interpolation='none')cb=plt.colorbar(im)fortincb.ax.get_yticklabels()
如何去除颜色条上的边框(或使它们更细)?我几乎尝试了以下所有组合:cb=plt.colorbar(im3,drawedges=False)#orTruewithnexttwolines#cb.outline.set_linewidth(0)#cb.dividers.set_linewidth(0)cb.solids.set_rasterized(True)cb.solids.set_edgecolor("face")#Imsavingaspdfplt.savefig("thing.pdf",dpi=1000,bbox_inches='tight')使用matplotlib图查看时,其中