嗨,我有以下代码:
rateMap, occMap, spikeMap = pickle.load(open(rateMapFileName))
pl.imshow(rateMap)
pl.colorbar()
现在occMap是包含多个时间戳的x,y位置的占用地图。有些点x,y位置没有占用(即在该矩阵值处=0值)
当我使用上面的脚本绘制rateMap(即=spikeMap/occMap)时。生成的colorbar使用默认的jetmapcolormap。我希望occMap中的null/0值在rateMap图中显示为白色。所以不管怎样给colorbar函数加零?并将其与occMap相关联
我试着看这个脚本How to add "black" to matplotlib colormap?,但没能让它起作用?在
以下是一个示例图像,其白点基本上指的是x,y位置,值为0或没有占用:
******编辑**** 我试着用这个代码,这里是我如何将白色添加到colormap中的,但是我想把这个白色添加到默认的jet colormap中。有什么建议吗??在
^{pr2}$
对于您的问题,我建议将第一个级别设置为大于零,并使用colorbar的扩展功能来指定零x,y位置。在
首先,我们导入libs并尝试从稀疏网格上
numpy
的正态分布函数生成一些随机数据。在为了说明您的问题,我们将所有负值设置为零,呈现非负网格数据
^{pr2}$Z
。在现在到关键点了!只需将超出范围的颜色添加到颜色贴图中。在
您还可以使用
set_over
,set_bad
方法为超范围数据和未定义(NaN)数据设置颜色。在设置子批次:
设置绘图级别,但请记住将最低级别修改为接近零的正数。在
下面是如何绘制数组Z
将最低级别显示为0.0可能会导致一些歧义,也许将levels[0]设置为0.1更适合您。在
您可以参考以下链接了解更多信息:
https://matplotlib.org/examples/pylab_examples/image_masked.html
https://matplotlib.org/examples/pylab_examples/contourf_demo.html
相关问题 更多 >
编程相关推荐