【Matlab函数分析】绘图函数:colormap查看并设置当前颜色图

2024-05-28 09:44

本文主要是介绍【Matlab函数分析】绘图函数:colormap查看并设置当前颜色图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

🔗 运行环境:Matlab

🚩 撰写作者:左手の明天

🥇 精选专栏:《python》

🔥  推荐专栏:《算法研究》

#### 防伪水印——左手の明天 ####

💗 大家好🤗🤗🤗,我是左手の明天!好久不见💗

💗今天更新系列【Matlab函数分析】——colormap查看并设置当前颜色图💗

📆  最近更新:2024 年 05 月 28 日,左手の明天的第 333 篇原创博客

📚 更新于专栏:matlab

#### 防伪水印——左手の明天 ####


颜色图

颜色图是由值组成的矩阵,这些值用于定义诸如曲面、图像以及补片之类的图形对象的颜色。MATLAB通过将数据值映射到颜色图中的颜色来绘制这些对象。

颜色图可以为任意长度,但宽度必须为三列。矩阵中的每一行均使用 RGB 三元组定义一种颜色。RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。通常,强度是 [0, 1] 范围内的 double 或 single 值。值 0 表示无颜色,值 1 表示全强度。例如,以下命令将创建一个包含五种颜色(黑色、红色、绿色、蓝色和白色)的颜色图。

mymap = [0 0 01 0 00 1 00 0 11 1 1];

要更改可视化的颜色方案,请调用 colormap 函数以更改所属坐标区或图窗的颜色图。例如,以下命令将创建一个曲面图,并将图窗的颜色图设置为 mymap

surf(peaks)
colormap(mymap)


三列矩阵

要创建自定义颜色图,将 map 指定为 RGB 三元组组成的三列矩阵(其中每行定义一种颜色)。RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度可以是 [0, 1] 范围内的 double 或 single 值,也可以是 [0, 255] 范围内的 uint8 值。例如,此矩阵定义一个包含五种颜色的颜色图。

map = [0.2 0.1 0.50.1 0.5 0.80.2 0.7 0.60.8 0.7 0.30.9 1 0];

下表列出了常见颜色的 RGB 三元组值。

颜色double 或 single RGB 三元组uint8 RGB 三元组
黄色[1 1 0][255 255 0]
品红色[1 0 1][255 0 255]
青蓝色[0 1 1][0 255 255]
红色[1 0 0][255 0 0]
绿色[0 1 0][0 255 0]
蓝色[0 0 1][0 0 255]
白色[1 1 1][255 255 255]
黑色[0 0 0][0 0 0]

colormap设置颜色图

如果为图窗设置了颜色图,图窗中的坐标区和图将使用相同的颜色图。新颜色图的长度(颜色数)与当前颜色图相同。当使用此语法时,不能为颜色图指定自定义长度。

  • colormap(map) 将当前图窗的颜色图设置为 map 指定的颜色图。例如,colormap hot 将颜色图设置为 hot
  • colormap(target,map) 为 target 指定的图窗、坐标区或独立可视化设置颜色图,而不是为当前图窗设置颜色图。
  • cmap = colormap(___) 设置颜色图,并将其以由 RGB 三元组组成的三列矩阵形式返回。使用上述任一使用圆括号的语法将 cmap 指定为输出参量。

 colormap获取当前颜色图

  • cmap = colormap 返回当前图窗的颜色图,形式为 RGB 三元组组成的三列矩阵。
  • cmap = colormap(target ) 返回由 target 指定的图窗、坐标区或独立可视化的颜色图。

示例

更改图窗的颜色图

(1)创建一个曲面图并将颜色图设置为 winter

surf(peaks)
colormap winter

(2)创建一个曲面图并将颜色图设置为 summer。

surf(peaks)
colormap summer

(3)现在将颜色图设置回系统的默认值。如果尚未指定不同默认值,则默认颜色图是 parula

colormap default

对图窗中的每个坐标区使用不同的颜色图

可以使用 tiledlayout 和 nexttile 函数显示分块图。调用 tiledlayout 函数以创建一个 2×1 分块图布局。调用 nexttile 函数以创建坐标区对象 ax1 和 ax2。通过将坐标区对象传递给 colormap 函数,为每个坐标区指定不同的颜色图。在上坐标区中,使用 spring 颜色图创建一个曲面图。在下坐标区中,使用 winter 颜色图创建一个曲面图。

tiledlayout(2,1)
ax1 = nexttile;
surf(peaks)
colormap(ax1,spring)ax2 = nexttile; 
surf(peaks)
colormap(ax2,winter)

指定颜色图的颜色数

通过将整数作为内置颜色图的输入参量传递来指定用于颜色图的颜色数。使用 parula 颜色图中的五种颜色。

mesh(peaks)
colormap(parula(5))

创建自定义颜色图

通过定义一个由介于 0.0 和 1.0 之间的值组成的三列矩阵来创建一个自定义颜色图。每行定义一个三元素 RGB 三元组。

  • 第一列指定红色强度。
  • 第二列指定绿色强度。
  • 第三列指定蓝色强度。

通过将前两个列设置为零来使用蓝色值的颜色图。

map = [0 0 0.30 0 0.40 0 0.50 0 0.60 0 0.80 0 1.0];surf(peaks)
colormap(map)

返回用在绘图中的颜色图值

创建 peaks 函数的曲面图并指定颜色图。

mesh(peaks)
colormap(autumn(5))

返回定义用在绘图中使用的颜色的值的三列矩阵。每行是一个指定颜色图的一种颜色的 RGB 三元组颜色值。

cmap = colormap
cmap = 5×31.0000         0         01.0000    0.2500         01.0000    0.5000         01.0000    0.7500         01.0000    1.0000         0

返回特定坐标区的颜色图值

通过将坐标区对象传递给 colormap 函数,返回特定坐标区的颜色图值。

使用 tiledlayout 和 nexttile 函数创建两个分块图。调用 tiledlayout 函数以创建一个 2×1 分块图布局。调用 nexttile 函数以创建坐标区对象 ax1 和 ax2。然后显示两个以不同颜色图填充的等高线图。

tiledlayout(2,1)
ax1 = nexttile;
contourf(peaks)
colormap(ax1,hot(8))ax2 = nexttile;
contourf(peaks)
colormap(ax2,pink)

通过将 ax1 传递给 colormap 函数,返回上部绘图中使用的颜色图值。每行是一个指定颜色图的一种颜色的 RGB 三元组颜色值。

cmap = colormap(ax1)
cmap = 8×30.3333         0         00.6667         0         01.0000         0         01.0000    0.3333         01.0000    0.6667         01.0000    1.0000         01.0000    1.0000    0.50001.0000    1.0000    1.0000

这篇关于【Matlab函数分析】绘图函数:colormap查看并设置当前颜色图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1010210

相关文章

Feign Client超时时间设置不生效的解决方法

《FeignClient超时时间设置不生效的解决方法》这篇文章主要为大家详细介绍了FeignClient超时时间设置不生效的原因与解决方法,具有一定的的参考价值,希望对大家有一定的帮助... 在使用Feign Client时,可以通过两种方式来设置超时时间:1.针对整个Feign Client设置超时时间

C/C++错误信息处理的常见方法及函数

《C/C++错误信息处理的常见方法及函数》C/C++是两种广泛使用的编程语言,特别是在系统编程、嵌入式开发以及高性能计算领域,:本文主要介绍C/C++错误信息处理的常见方法及函数,文中通过代码介绍... 目录前言1. errno 和 perror()示例:2. strerror()示例:3. perror(

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

Kotlin 作用域函数apply、let、run、with、also使用指南

《Kotlin作用域函数apply、let、run、with、also使用指南》在Kotlin开发中,作用域函数(ScopeFunctions)是一组能让代码更简洁、更函数式的高阶函数,本文将... 目录一、引言:为什么需要作用域函数?二、作用域函China编程数详解1. apply:对象配置的 “流式构建器”最

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

PyCharm如何设置新建文件默认为LF换行符

《PyCharm如何设置新建文件默认为LF换行符》:本文主要介绍PyCharm如何设置新建文件默认为LF换行符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录PyCharm设置新建文件默认为LF换行符设置换行符修改换行符总结PyCharm设置新建文件默认为LF

找不到Anaconda prompt终端的原因分析及解决方案

《找不到Anacondaprompt终端的原因分析及解决方案》因为anaconda还没有初始化,在安装anaconda的过程中,有一行是否要添加anaconda到菜单目录中,由于没有勾选,导致没有菜... 目录问题原因问http://www.chinasem.cn题解决安装了 Anaconda 却找不到 An

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用