6 python numpy matplotlib scipy
I'd like to plot a 2-d matrix from numpy as a colored matrix in Matplotlib. I have the following 9-by-9 array:
my_array = diag(ones(9))
# plot the array
pcolor(my_array)
Run Code Online (Sandbox Code Playgroud)
我想将对角线的前三个元素设置为某种颜色,接下来的三个是不同的颜色,最后三个是不同的颜色.我想用十六进制代码字符串指定颜色,比如"#FF8C00".我怎样才能做到这一点?
另外,如何设置pcolor的0值元素的颜色?
要使元素具有不同的颜色,请为它们分配不同的值:
my_array = diag([1,1,1,2,2,2,3,3,3])
Run Code Online (Sandbox Code Playgroud)
要指定颜色,请尝试:
from matplotlib.colors import ListedColormap, NoNorm
cmap = ListedColormap(['#E0E0E0', '#FF8C00', '#8c00FF', '#00FF8C'])
pcolor(my_array,cmap=cmap,norm=NoNorm())
Run Code Online (Sandbox Code Playgroud)
该norm=NoNorm()参数避免对矩阵值进行任何缩放,因此 0 获取列表中的第一个颜色,1 获取第二个颜色,依此类推。
| 归档时间: |
|
| 查看次数: |
3686 次 |
| 最近记录: |