我想rainbow
在图像中使用颜色图imshow
。它工作得很好,但我想重新定义 value 的颜色0
。我想用白色代替紫罗兰色。
我只想对零值执行此操作,所有其他值都可以保留颜色图中的默认值。
知道如何在无需手动编辑颜色图的情况下执行此操作吗?
我想rainbow
在图像中使用颜色图imshow
。它工作得很好,但我想重新定义 value 的颜色0
。我想用白色代替紫罗兰色。
我只想对零值执行此操作,所有其他值都可以保留颜色图中的默认值。
知道如何在无需手动编辑颜色图的情况下执行此操作吗?
您也可以使用set_under
我认为比使用更具语义意义的set_bad
my_cmap = matplotlib.cm.get_cmap('rainbow')
my_cmap.set_under('w')
imshow(np.arange(25).reshape(5, 5),
interpolation='none',
cmap=my_cmap,
vmin=.001)
您可以使用 kwarg 调整颜色条以显示“下”(和对称的“上”)颜色extend
,请参阅示例和文档。
有关具有更完整示例的重复项的答案,请参阅如何创建专门处理一个值的 matplotlib 颜色图?