如何让自己画出的数值对应不同的颜色呢?换话句话说,如何用不同的颜色表示不同的数值呢?
就是让数值的范围对应颜色的范围。
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
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;
标准色jet的分布结果

- https://au.mathworks.com/help/matlab/ref/colormap.html
在matlab中,可以定义不同的函数数值,并且根据函数的数值形式,得到相关的函数值
根据函数的大小,逐步显示不同的颜色,其中可以根据循环for来定义,得到有关的数据结果
具体过程见:https://blog.csdn.net/m0_68894275/article/details/125028608
matlab中,每个figure都有(而且仅有)一个colormap,翻译过来就是色图。 COLORMAP(MAP) 用MAP矩阵映射当前图形的色图。 COLORMAP('default') 默认的设置是 JET. MAP = COLORMAP 获得当前色图矩阵. COLORMAP(AX,...) 应用色图到AX坐标对应的图形,而非当前图形。 colormap实际上是...
figure(1)
worldmap([35 75],[-150 -50]); %研究区范围
[DEM,R] = geotiffread('F:\DEM_SRTM\North America\Canada_USA_mianland.tif'); %加载带有坐标信息的图
DEM = double(DEM); %需要将
matplotlib中的色彩定义主要用到了RGB、RGBA、CMYK、灰色四种模型。
RGB模型
RGB是最常见的一种色彩模型,它使用红、绿、蓝三原色的亮度来定量表示颜色,这种模型也称为加色混色模型,是以RGB三色光互相叠加来实现混色的方法,因而适合于显示器等发光体的显示。
如果是三原色光中的两种色光进行等比例混合的话,那么,得到的结果是黄、青、紫三色光。
常见的案例如:
红+绿=黄
红+蓝=紫(亮紫)
绿+蓝=青
红+绿+蓝=白
三种基色光全无=黑
这是色光混合
看起来你不能轻易做到这一点.在Matlab 2013b或更早版本(我没有尝试过2014b)当你调用HeatMap时,它会在内部完成创建轴和设置颜色的过程等等.最终它到达plot.m中的一个点,其中调用以下函数:function scaleHeatMap(hHMAxes, obj)%SCALEHEATMAP Update the CLIM in image axesif obj.Symmetricm...
https://blog.csdn.net/weixin_39653442/article/details/115813820
https://zhuanlan.zhihu.com/p/49615571
链接:https://www.zhihu.com/question/503639152/answer/2257427351
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
clear;clc;
[x, y, z] = peaks(30);
min_z = min(z(:));
max_z = max(z(:));
% 映射到 0 - 1
z = (z - min_z) ./ (max_z - min_z);
% 映射到
我们知道索引图像有两个分量,一个是数据矩阵X,一个是彩色映射矩阵map,colormap就是用来设定map的函数。MATLAB中默认自带了18中colormap,图像如下
按照主题可分为:
季节(summer,autumn,winter,spring)
温度(hot,cool)
材质(bone,copper)
hues(pink,gray)
颜色空间(hsv,colorcube
实验总结:红绿灯颜色以及数字识别(一):颜色识别
一、知识背景
颜色空间:通常拍摄的图像是RGB颜色空间,图片的像素点是由R、G、B分量来表示肉眼所看到的颜色。比如:红色为(255,0,0),黄色为(255,255,0),查找颜色对应的RGB值可查阅相关资料。(个人jio得阔以理解为色彩由红绿蓝三种颜色调和)
这里附上一个链接: 常用颜色的RGB值.
进行红绿灯识别时,需要转换到HSV空间:H(色调)、S(饱和度)、V(亮度)来进行信号灯识别。(个人认为转到HSV空间更便于由亮度对信号灯区域进行识别)