相关疑难解决方法(0)

在颜色图和颜色条中为两个(或更多)特定值添加单独的颜色

我想在颜色图中显示矩阵,并为两个或更多特殊值指定特定颜色.

import numpy as np
from pylab import *

np.random.seed(10)    
a=np.random.randint(-1,10, size=(5, 5))
print a

fig, ax = plt.subplots()
mat=ax.matshow(a, cmap=cm.jet, vmin=1, vmax=10)
colorbar(mat)
show()
Run Code Online (Sandbox Code Playgroud)

以下是a矩阵的值:

[[ 8  3 -1  0  8]
 [-1  0  9  7  8]
 [-1  9  7  5  3]
 [ 2 -1  3  5  7]
 [ 9  0  7  3  0]]
Run Code Online (Sandbox Code Playgroud)

这是情节: 在此输入图像描述
我想为所有-1个条目分配黑色,为所有0个条目分配白色,我希望它在第一个下面的颜色条上显示为两个离散颜色.这是一个例子,我的照片编辑技巧很差,但应该清楚我想要的东西(颜色条应该是比例尺):
在此输入图像描述 有一个连续的jet彩色地图对我来说并不重要,我会满意的解决方案,我的颜色条将是离散的,并由例如10种颜色组成,其中两种颜色是黑色和白色,8种jet颜色映射颜色颜色.然而,重要的是-1和0具有不同的颜色,无论值的总范围是多少.
例如,如果值范围是-1到1000:
在此输入图像描述

python numpy matplotlib

4
推荐指数
1
解决办法
2929
查看次数

标签 统计

matplotlib ×1

numpy ×1

python ×1