【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

相关文章

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

GO语言中函数命名返回值的使用

《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

Python Counter 函数使用案例

《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MySQL中REPLACE函数与语句举例详解

《MySQL中REPLACE函数与语句举例详解》在MySQL中REPLACE函数是一个用于处理字符串的强大工具,它的主要功能是替换字符串中的某些子字符串,:本文主要介绍MySQL中REPLACE函... 目录一、REPLACE()函数语法:参数说明:功能说明:示例:二、REPLACE INTO语句语法:参数

MySQL设置密码复杂度策略的完整步骤(附代码示例)

《MySQL设置密码复杂度策略的完整步骤(附代码示例)》MySQL密码策略还可能包括密码复杂度的检查,如是否要求密码包含大写字母、小写字母、数字和特殊字符等,:本文主要介绍MySQL设置密码复杂度... 目录前言1. 使用 validate_password 插件1.1 启用 validate_passwo

python中update()函数的用法和一些例子

《python中update()函数的用法和一些例子》update()方法是字典对象的方法,用于将一个字典中的键值对更新到另一个字典中,:本文主要介绍python中update()函数的用法和一些... 目录前言用法注意事项示例示例 1: 使用另一个字典来更新示例 2: 使用可迭代对象来更新示例 3: 使用

MySQL的触发器全解析(创建、查看触发器)

《MySQL的触发器全解析(创建、查看触发器)》MySQL触发器是与表关联的存储程序,当INSERT/UPDATE/DELETE事件发生时自动执行,用于维护数据一致性、日志记录和校验,优点包括自动执行... 目录触发器的概念:创建触www.chinasem.cn发器:查看触发器:查看当前数据库的所有触发器的定

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按