Matlab中pcolor和colormap的使用

pcolor是matlab里绘制矩阵的函数,它可以把数据通过颜色表示出来。
但是它的使用,特别对于初学者来说,有点晦涩难懂。
我们通过几个问题来认识一下这个函数的使用

pcolor绘制的颜色从哪里来?

通过网上任意一些代码样例,可以使用pcolor绘制出颜色方格出来。但是它的颜色是怎么来的?
比如说下面这段代码:

c = zeros(5);
pcolor(c)


为什么是这种蓝绿色?

其实它的颜色由colormap来指定,matlab系统内部其实定义了一些色系,如下,

如果访问不了的官网的,我这里贴出来可以选择的类型

  • parula
  • turbo
  • hsv
  • hot
  • cool
  • spring
  • summer
  • autumn
  • winter
  • gray
  • bone
  • copper
  • pink
  • jet
  • lines
  • colorcube
  • prism
  • flag
  • white

第一个色系名字叫parula,它是系统默认的,所以如果不指定的话,它就是使用的parula。
也相当于使用了colormap default

我们换一个色系试一下呢,比如colormap autumn。看,颜色变了吧

pcolor绘制单元跟入参矩阵是什么关系?

pcolor的每一个cell绘制的其实是相邻(左右上下)4个点的左下角(列需要反转),该值在colormap中的位置。值如果是0,则为色系开始的颜色。值越大,选择颜色越往后。

那么矩阵的shape(M,N)则会对应pcolor绘制的cell shape(M-1,N-1)

相邻两个点的最大值,会作为分割colormap的份数。在Figure图显示框里,可以点击colormap来查看。
如下面的例子,

C = [10 8 6 4 2; 1  4 0 1 1;1  2 0 1 1;1  1 1 1 10];
% C=zeros(10);pcolor(C);
% colormap(mymap)
colormap autumn


值得注意的时,这里的cell列的顺序跟矩阵中的顺序是相反的。

虽然矩阵是

10 8 6 4 2;
1  4 0 1 1;
1  2 0 1 1;
1  1 1 1 10

但是在pcolor中处理时,倒转为

1  1 1 1 10;
1  2 0 1 1;
1  4 0 1 1;
10 8 6 4 2;

所以上图中取左下角是倒转后的取值

pcolor三个参数中前两个参数是干什么的?

pcolor有一种入参是三个的,如下
pcolor(X,Y,C)

其中X和Y是坐标。

举个例子来看,如下图4个cell,有6个点,这六个点的坐标我标记在图中。

坐标值如下:
(1,3)(2,3) (3,3)
(1,2)(2,2) (3,2)
(1,1)(2,1) (3,1)

写成X,Y则为:

X= [1,2,3;
1,2,3;
1,2,3]
Y= [1,1,1;
2,2,2;
3,3,3]

注意: cell的y轴还是做了反转

pcolor如何把cell描边?
可以通过EdgeColor 设置边的颜色,通过LineWidth设置边的宽度
通过下面的例子看一下,

C = [10 8 6 4 2; 1  4 0 1 1;1  2 0 1 1;1  1 1 1 10];
s = pcolor(C);
s.EdgeColor = [1 0.8 0.8];
s.LineWidth = 3;
colormap autumn


pcolor怎么实现渐变色
渐变实际上是通过差插值interpolate实现的,具体是通过**FaceColor = ‘interp’;**来设置

C = [10 8 6 4 2; 1  4 0 1 1;1  2 0 1 1;1  1 1 1 10];
s = pcolor(C);
s.EdgeColor = [1 0.8 0.8];
s.LineWidth = 3;
s.FaceColor = 'interp';
colormap autumn

参考资料

  1. https://blog.csdn.net/mimiduck/article/details/114932920?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1.pc_relevant_antiscanv2&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1.pc_relevant_antiscanv2&utm_relevant_index=1

[Matlab]中pcolor和colormap的使用相关推荐

  1. 【matlab】pcolor和colormap的使用

    pcolor是matlab里绘制矩阵的函数,它可以把数据通过颜色表示出来. 但是它的使用,特别对于初学者来说,有点晦涩难懂. 我们通过几个问题来认识一下这个函数的使用 pcolor绘制的颜色从哪里来? ...

  2. 关于matlab中pcolor显示图片时的shading设置问题

    在用pcolor进行显示图片时,要调用colormap,caxis,shading进行设置,才有可能还原图片本来的色彩 pcolor的用法是: pcolor(N) 其中N是一个矩阵,矩阵的行列数表示图 ...

  3. matlab shading颜色设置,关于matlab中pcolor显示图片时的shading设置问题

    在用pcolor进行显示图片时,要调用colormap,caxis,shading进行设置,才有可能还原图片本来的色彩 pcolor的用法是: pcolor(N) 其中N是一个矩阵,矩阵的行列数表示图 ...

  4. matlab最后ceq,matlab 中ceq是什么

    matlab 中这句话是什么含义? unique(p)的意思即是给出数组p中的所有不同的元素:比如:>>A=[115623398624]A=115623398624>>c=un ...

  5. 对matlab中colormap的解释及fill、imshow的用法说明

    这篇文章的主要目的在于对colormap的解释,会涉及到fill和imshow的使用,因此首先解释fill和imshow的用法. fill的用法说明 fill就是填充一个多边形区域.函数用法fill( ...

  6. MATLAB | 如何在MATLAB中使用python全部colormap配色

    写了个函数,可以在MATLAB 中使用 python 全部 colormap 配色: (以下仅展示部分) 工具函数及说明 注意文件夹内一定要有: PYCM.m PYCMset.mat 两个文件 ,PY ...

  7. Matlab中的彩色图及colormap

    参考资料: (1)http://blog.sciencenet.cn/blog-360646-465608.html (2)http://blog.sciencenet.cn/blog-360646- ...

  8. Matlab中colormap的解释与ill、imshow的用法

    这篇文章的主要目的在于对colormap的解释,会涉及到fill和imshow的使用,因此首先解释fill和imshow的用法. fill的用法说明 fill就是填充一个多边形区域.函数用法fill( ...

  9. matlab中help所有函数功能的英文翻译

    doc funname 在帮助浏览器中打开帮助文档 help funname 在命令窗口打开帮助文档 helpbrowser 直接打开帮助浏览器 lookfor funname 搜索某个关键字相关函数 ...

  10. MATLAB交换图片红绿颜色通道,matlab的颜色映射colormap

    Colormap 颜色映射 1.首先说明颜色图这个概念: 在matlab中用我们描述一种颜色通常用RGB(红绿蓝)的形式,当然在计算机中RGB取值都在0到1的实数,强度必须在 [0, 1] 范围内,值 ...

最新文章

  1. python语言百度百科-Python 语言下数据驱动DDT的应用
  2. 数据结构:链表面试题
  3. Socket网络编程--聊天程序(3)
  4. 数学建模【统计模型及应用(单-双因素方差分析、一-多元线性回归分析、牙膏价格问题、方差分析与回归分析的SPSS实现)】
  5. 【计算几何】【预处理】【枚举】Urozero Autumn Training Camp 2016 Day 5: NWERC-2016 Problem K. Kiwi Trees...
  6. Java构建子类对象时的顺序
  7. python时间模块的使用
  8. 九度OJ1005题 一直WA??
  9. java8新特性有哪些
  10. Linux (deepin)网络管理详解
  11. (附源码)node.js基于vue框架潮牌官网设计与实现 毕业设计 010955
  12. 银湖联手博通欲收购东芝芯片业务 出价180亿美元
  13. 大数据技术之 Linux 基础
  14. MongoDB索引优化
  15. 嵌入式是什么?为什么引入嵌入式技术?嵌入式技术的优缺点?
  16. 如何禁止input文本框输入
  17. 移动端布局 - rem布局
  18. 教你彻底屏蔽百度的广告与智能推荐
  19. CSS通过blur实现高斯模糊
  20. 投资理财-朋友好像的故事

热门文章

  1. BloomFilter, Count-Min Sketch算法
  2. java无法替换json中的换行_(NSScanner的使用)替换服务器获取的JSON数据中的换行符(JSON是不能解析带有换行符字符串)...
  3. keil5安装_如何安装Keil5
  4. tomcat后台密码爆破脚本(python+字典)_Web中间件漏洞之Tomcat篇
  5. android 发布版本证书,Android Studio 获取发布版和测试版证书SHA1的两种方式
  6. 乐山计算机学校搬迁,【骨头再次发贴】谈谈新校区。
  7. vueh5调用摄像头拍照_Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能...
  8. php array函数 array_search 搜索键值, 返回键名
  9. 对接融云记录几点问题
  10. HashMap工作原理和扩容机制