让颜色对应数值,matlab colormap

如何让自己画出的数值对应不同的颜色呢?换话句话说,如何用不同的颜色表示不同的数值呢?
就是让数值的范围对应颜色的范围。
matlab colormap

标准色

hsv 色彩饱和值(以红色开始束)
hot 从黑到红到黄到白
cool 青蓝和洋红的色度
pink 粉红的彩色度
gray 线性灰度
bone 带一点蓝色的灰度
jet hsv 的一种变形(以蓝色开始和结束)
copper 线性铜色度
prim 三棱镜。交替为红色橘黄色黄色绿色和天蓝色
flag 交替为红色、白色、蓝色和黑色

代码如下

下面的例子是让正弦函数的不同的值对应不同的颜色,可用利用不同的标准颜色映射。
源码下载地址:colormap颜色对应数值

% colormap_plot 
% author: taiping.z(email:[email protected])
% date: Web Apr 26 2017
% computational neuroscience lab at SIA
% colormap_plot 

clc;
clear all;
close all;

max_color_value = 10;

% jet_color = colormap(hsv(max_color_value));
% jet_color = colormap(cool(max_color_value));
% jet_color = colormap(hot(max_color_value));
% jet_color = colormap(pink(max_color_value));
% jet_color = colormap(gray(max_color_value));
% jet_color = colormap(pink(max_color_value));
% jet_color = colormap(bone(max_color_value));
jet_color = colormap(jet(max_color_value));
% jet_color = colormap(copper(max_color_value));
% jet_color = colormap(prim(max_color_value));
% jet_color = colormap(flag(max_color_value));

x = linspace(0,6*pi,1000);

y = sin(x);

color_index = ceil(y*5 + 5);

for i = 1:1:length(y),

    selected_color = jet_color(color_index(i),:);

    plot(x(i), y(i), 'o','color',selected_color);

    hold on;
end

标准色jet的分布结果
让颜色对应数值,matlab colormap_第1张图片

你可能感兴趣的:(MATLAB)