让颜色对应数值,matlab colormap

#问

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

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

代码如下

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

% colormap_plot 
% author: taiping.z(email:taiping.z@outlook.com)
% 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的分布结果
colormap

Reference:

  1. https://au.mathworks.com/help/matlab/ref/colormap.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值