欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

matlab中colormap的自定义与调用

程序员文章站 2022-05-20 22:30:39
...

昨天今天尝试了用matlab做三维直方图,但是发现matlab中自带的colormap颜色很少并且颜色特别深,很多不适合用作科研论文的结果展示,所以搜索实践了一下matlab中colormap的自定义与调用方法,在此与读者分享。
这里随便填了一张excel读入matlab中。先来看一张matlab默认的颜色渲染的直方图(左)和matlab中自带的一种叫做summer的colormaps渲染的直方图(右)的效果:
matlab中colormap的自定义与调用matlab中colormap的自定义与调用
可以看到颜色都比较深。如果想换一个颜色的话,需要导入自定义的colormap。这里介绍两种方式。都需要在生成的图片窗口中先调整颜色,再将自己的colomap保存,以便后续使用。

  1. 生成的图片窗口中:编辑➡颜色图,打开的是“无标题的坐标轴”的colormap编辑界面,如下图。
    matlab中colormap的自定义与调用
    双击上图中红框可以打开下图“选择标记颜色”窗口,通过[0-1],[0-255],十六进制三种方式更改、增加颜色。
    matlab中colormap的自定义与调用
    比如我这里选择16进制方式,设定自己需要的渐变色,首#e8f0fc,尾#4582eb,自定义的colormap如下图。
    matlab中colormap的自定义与调用
    接下来,依次输入以下语句保存自定义colormap:
ax=gca; 
lightblue = colormap(ax);  //把当前的ax的colormap赋给lightblue
save lightblue lightblue;  //把lightblue变量保存为lightblue.mat,位置在matlab当前目录

此时可在脚本中调用自己的colormap:

load lightblue;
colormap(lightblue)

效果如下:
matlab中colormap的自定义与调用
2. 生成的图片窗口中:编辑➡图形属性,打开的是Figure的colormap编辑界面。在颜色图中选择自定义,出来右侧的颜色图编辑器,如下图。然后自己定义渐变色首尾的颜色。
matlab中colormap的自定义与调用
接下来,依次输入以下语句保存自定义colormap,第一种方式的稍有不同(这里我换了一种颜色):

lightpurple = colormap;  //把当前colormap赋给lightpurple
save lightpurple lightpurple;  //把lightpurple变量保存为lightblue.mat,位置在matlab当前目录

之后,调用自己的colormap也是一样的方式:

load lightpurple;
colormap(lightpurple)

效果如下:
matlab中colormap的自定义与调用
最后给大家推荐一个不错的渐变色配色网站,https://webgradients.com/,通过截图下方的十六进制颜色就可以设定自己喜欢的渐变色啦~
matlab中colormap的自定义与调用

相关标签: 可视化 matlab