【MATLAB】进阶绘图 ( colormap 颜色图矩阵分析 | 自定义 colormap 颜色图 | 生成 64 x 3 的 colormap 颜色图矩阵 )
文章目录
- 一、colormap 矩阵分析
- 二、自定义 colormap 颜色图
- 1、生成 colormap 矩阵
- 2、代码示例
一、colormap 矩阵分析
imagesc 函数参考文档 : https://ww2.mathworks.cn/help/matlab/ref/imagesc.html
colormap 颜色图本质是一个定义好的矩阵 , 矩阵中每个元素都对应一个颜色值 , 这些值最小值到最大值对应着一组不同的颜色渐变值 ;
打印颜色图的具体的信息 :
代码 :
% 查看颜色图颜色值
colorbar;% 打印颜色图的值
h = colormap(cool)
命令窗口打印结果 : 每行的内容是 R G B 三个 0 ~ 1 之间的值 , 有 646464 行值 ;
>> Untitled10h =0 1.0000 1.00000.0159 0.9841 1.00000.0317 0.9683 1.00000.0476 0.9524 1.00000.0635 0.9365 1.00000.0794 0.9206 1.00000.0952 0.9048 1.00000.1111 0.8889 1.00000.1270 0.8730 1.00000.1429 0.8571 1.00000.1587 0.8413 1.00000.1746 0.8254 1.00000.1905 0.8095 1.00000.2063 0.7937 1.00000.2222 0.7778 1.00000.2381 0.7619 1.00000.2540 0.7460 1.00000.2698 0.7302 1.00000.2857 0.7143 1.00000.3016 0.6984 1.00000.3175 0.6825 1.00000.3333 0.6667 1.00000.3492 0.6508 1.00000.3651 0.6349 1.00000.3810 0.6190 1.00000.3968 0.6032 1.00000.4127 0.5873 1.00000.4286 0.5714 1.00000.4444 0.5556 1.00000.4603 0.5397 1.00000.4762 0.5238 1.00000.4921 0.5079 1.00000.5079 0.4921 1.00000.5238 0.4762 1.00000.5397 0.4603 1.00000.5556 0.4444 1.00000.5714 0.4286 1.00000.5873 0.4127 1.00000.6032 0.3968 1.00000.6190 0.3810 1.00000.6349 0.3651 1.00000.6508 0.3492 1.00000.6667 0.3333 1.00000.6825 0.3175 1.00000.6984 0.3016 1.00000.7143 0.2857 1.00000.7302 0.2698 1.00000.7460 0.2540 1.00000.7619 0.2381 1.00000.7778 0.2222 1.00000.7937 0.2063 1.00000.8095 0.1905 1.00000.8254 0.1746 1.00000.8413 0.1587 1.00000.8571 0.1429 1.00000.8730 0.1270 1.00000.8889 0.1111 1.00000.9048 0.0952 1.00000.9206 0.0794 1.00000.9365 0.0635 1.00000.9524 0.0476 1.00000.9683 0.0317 1.00000.9841 0.0159 1.00001.0000 0 1.0000>>
绘图效果 :
二、自定义 colormap 颜色图
1、生成 colormap 矩阵
由上面打印的 colormap 颜色图矩阵数据可知 , 颜色图由 64×364 \times 364×3 矩阵组成 , 有 646464 行 , 333 列 , 每行代表一个颜色值 ;
这里生成一个绿色的颜色图矩阵 , 每行的 R G B 数据中 , 只有 G 是大于 000 的数值 , 其它两个数值都为 000 ;
绿色 G 的变化是从 000 到 111 , 分成 646464 份 , 均匀进行变化 ; 使用 linspace 生成该向量 ;
linspace(0, 1, 64)
生成矩阵时 , 为了方便定义 , 这里我们先生成一个 333 行 646464 列的矩阵 , 然后转置得到一个 64×364 \times 364×3 的矩阵 ;
% 3 x 64 矩阵 , 3 行 , 64 列
green_colormap_3x64 = [linspace(0, 0, 64) ; linspace(0, 1, 64) ; linspace(0, 0, 64)];% 转置矩阵 , 3 x 64 矩阵转置为 64 x 3 矩阵
green_colormap_64x3 = green_colormap';
这里转置之后的 green_colormap_64x3 就可以作为颜色图 colormap 使用 ;
2、代码示例
代码示例 :
% 生成一个 10 x 3 的矩阵
x = [1:10; 3:12; 5:14];% 3 x 64 矩阵 , 3 行 , 64 列
green_colormap_3x64 = [linspace(0, 0, 64) ; linspace(0, 1, 64) ; linspace(0, 0, 64)];% 转置矩阵 , 3 x 64 矩阵转置为 64 x 3 矩阵
green_colormap_64x3 = green_colormap';% 使用 10 x 3 的颜色网格表示 x 10 x 3 的矩阵
imagesc(x);% 查看颜色图颜色值
colorbar;% 设置自定义的颜色图
colormap(green_colormap_64x3);% 打印颜色图的值 green_colormap_64x3
green_colormap_64x3
运行结果 :
命令行窗口打印结果 : 打印的是生成的 64×364 \times 364×3 的 colormap 颜色图矩阵
>> Untitled10green_colormap_64x3 =0 0.5000 00 0.5079 00 0.5159 00 0.5238 00 0.5317 00 0.5397 00 0.5476 00 0.5556 00 0.5635 00 0.5714 00 0.5794 00 0.5873 00 0.5952 00 0.6032 00 0.6111 00 0.6190 00 0.6270 00 0.6349 00 0.6429 00 0.6508 00 0.6587 00 0.6667 00 0.6746 00 0.6825 00 0.6905 00 0.6984 00 0.7063 00 0.7143 00 0.7222 00 0.7302 00 0.7381 00 0.7460 00 0.7540 00 0.7619 00 0.7698 00 0.7778 00 0.7857 00 0.7937 00 0.8016 00 0.8095 00 0.8175 00 0.8254 00 0.8333 00 0.8413 00 0.8492 00 0.8571 00 0.8651 00 0.8730 00 0.8810 00 0.8889 00 0.8968 00 0.9048 00 0.9127 00 0.9206 00 0.9286 00 0.9365 00 0.9444 00 0.9524 00 0.9603 00 0.9683 00 0.9762 00 0.9841 00 0.9921 00 1.0000 0>>
完整过程 :
【MATLAB】进阶绘图 ( colormap 颜色图矩阵分析 | 自定义 colormap 颜色图 | 生成 64 x 3 的 colormap 颜色图矩阵 )相关推荐
- Matlab进阶绘图第1期—山脊图/嵴线图/峰峦图
山脊图又称峰峦图.嵴线图,英文常称为Ridgeline Plot.Joy Plot. 山脊图一般由共享X轴的多组彼此重叠的填充折线图组成,其常用于对不同组数据间的分布情况进行比较,在一些顶级期刊中也能 ...
- Matlab进阶绘图第4期—三维堆叠柱状图/三维堆积图
三维堆叠柱状图是堆叠图(见Matlab论文插图绘制模板第6期)在三维空间的拓展. 三维堆叠柱状图不仅可以直观地展示各部分总数的对比,还能够看出各部分在总数中所占的比例,从而使数据更加形像. 当然,三维 ...
- Matlab进阶绘图第19期—三角气泡热图
三角气泡热图,顾名思义,就是仅保留气泡热图数据矩阵的上三角或下三角部分. 三角气泡热图简单明了,通过不同颜色.不同大小的圆形表示数据的大小,可以更加直观地对矩阵数据进行可视化表达. 本文使用自制的tr ...
- Matlab进阶绘图第6期—雷达图/蜘蛛图/星图
雷达图(Radar Chart),又称星图.蜘蛛图.蜘蛛网图.网络图.Kiviat图等,是一种以从同一点开始的轴上表示的三个以上变量的二维图表的形式,来显示多变量数据的图形方法. 雷达图可以直观地对多 ...
- Matlab进阶绘图第5期—风玫瑰图(WindRose)
风玫瑰图(Wind rose diagram)是一种特殊的极坐标堆叠图/统计直方图,其能够直观地表示某个地区一段时期内风向.风速的发生频率. 风玫瑰图在建筑规划.环保.风力发电.消防.石油站设计.海洋 ...
- matlab 进阶绘图:图片保存,极坐标绘图,函数绘图,等高线地图,三维条形图,三维散点图,gif 绘图
本文所包含的绘图方式: 极坐标绘图,函数绘图,等高线地图,三维条形图,三维散点图,gif 绘图 1 常用命令 hold on; % 持续绘图 hold off; 1.1 标注 xlabel(''); ...
- Matlab进阶绘图第8期—聚类/分类散点图
聚类/分类散点图是一种特殊的特征渲染散点图. 聚类/分类散点图通过一定的聚类.分类方法,将特征相近的离散点划分到同一个类别中,进而将每个离散点赋予类别标签,并利用不同的颜色对不同的类别进行区分. 本文 ...
- android 分时图x轴宽度,一步一步教你写股票走势图——分时图二(自定义xy轴)...
目录 一步一步教你写股票走势图--分时图一(概述) 一步一步教你写股票走势图--分时图二(自定义xy轴) 一步一步教你写股票走势图--分时图三(对齐图表.自定义柱状图高亮) 一步一步教你写股票走势图- ...
- MATLAB教学_06进阶绘图
本文学习视频:https://www.bilibili.com/video/av68228488?p=6 本文学习内容: 进阶2D绘图 绘图空间 3D绘图 semilogx(x,y); %x轴取对数 ...
最新文章
- jQuery / jQuery mvc plugin
- Rouche Theorem(Stein复分析)
- 数据库服务器 之 在Linux下使用perl通过unixODBC连接SQLServer2000
- struts2控制标签(一)选择标签,iterator标签,append标签
- HihoCoder - 1591 锦标赛(最大费用最大流)
- 八皇后(信息学奥赛一本通-T1214)
- 确认oracle是否繁忙,Oracle系统繁忙时,快速定位
- 拓端tecdat|R语言自定义两种统计量度:平均值和中位数,何时去使用?
- 数据包接收系列 — IP协议处理流程(二)
- mysql 分库分表 ~ ShardingSphere生态圈
- C语言 --- sizeof() 7种使用详解
- 好的技术领导与差的技术领导,千万不要对号入座,你会死的很惨!
- WPS文件转Excel文件怎么转?建议看看这些方法
- iOS开发接入腾讯云通信简略笔记
- 如何做一个简单的XX(学生/图书馆)管理系统(二)
- 群控系统服务器掉线,手机群控系统安装调试问题汇总以及解决办法
- Jenkins从svn获取代码报”E170001“异常问题解决
- Oracle 同义词synonym创建和删除
- 优启通怎么重装系统win10_i优系统教你怎样把WIN10重装回WIN7(详细版)
- Python list、tuple、dict区别