【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

相关文章

mybatis和mybatis-plus设置值为null不起作用问题及解决

《mybatis和mybatis-plus设置值为null不起作用问题及解决》Mybatis-Plus的FieldStrategy主要用于控制新增、更新和查询时对空值的处理策略,通过配置不同的策略类型... 目录MyBATis-plusFieldStrategy作用FieldStrategy类型每种策略的作

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意

Windows设置nginx启动端口的方法

《Windows设置nginx启动端口的方法》在服务器配置与开发过程中,nginx作为一款高效的HTTP和反向代理服务器,被广泛应用,而在Windows系统中,合理设置nginx的启动端口,是确保其正... 目录一、为什么要设置 nginx 启动端口二、设置步骤三、常见问题及解决一、为什么要设置 nginx

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

Java实现Elasticsearch查询当前索引全部数据的完整代码

《Java实现Elasticsearch查询当前索引全部数据的完整代码》:本文主要介绍如何在Java中实现查询Elasticsearch索引中指定条件下的全部数据,通过设置滚动查询参数(scrol... 目录需求背景通常情况Java 实现查询 Elasticsearch 全部数据写在最后需求背景通常情况下