Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Matlab中混合不同颜色贴图的颜色_Matlab_Contour_Colormap - Fatal编程技术网

如何在Matlab中混合不同颜色贴图的颜色

如何在Matlab中混合不同颜色贴图的颜色,matlab,contour,colormap,Matlab,Contour,Colormap,我希望重叠区域显示colormap(热)和colormap(冷)的混合颜色 比如说, contourf(peaks) colormap(hot) freezeColors hold on contourf(peaks') colormap(cool) 甚至我调整alpha值来调整等高线图的透明度。这些颜色看起来仍然不像是两种不同颜色贴图的混合。例如,轮廓1的一个环填充蓝色,轮廓2的另一个环填充红色。在等高线1和等高线2的环的重叠区域中,我想在等高线1和等高线2上填充紫色(红色+蓝色),而非重叠

我希望重叠区域显示colormap(热)和colormap(冷)的混合颜色

比如说,

contourf(peaks)
colormap(hot)
freezeColors
hold on
contourf(peaks')
colormap(cool)
甚至我调整alpha值来调整等高线图的透明度。这些颜色看起来仍然不像是两种不同颜色贴图的混合。例如,轮廓1的一个环填充蓝色,轮廓2的另一个环填充红色。在等高线1和等高线2的环的重叠区域中,我想在等高线1和等高线2上填充紫色(红色+蓝色),而非重叠区域仍然保持原始颜色(蓝色或红色)

有人有好主意吗


提前谢谢

编辑:我刚看了你的编辑,我不知道这个答案是你想要的。。。我就把它留在这儿以防万一

您正在使用的hold on命令只是覆盖以前的点(此外,colormap影响全局点,因此无论如何都无法工作…)。您需要做的是生成一个新的colormap,它是两个旧colormap的总和,有点像这样:

 Map1=colormap(hot);
 Map2=colormap(cool);
 CustomMap=Map1/2+Map2/2;
 imshow(ImageWhatever)
 colormap(CustomMap)

希望那是你想要的

我已经想出了解决办法。代码显示为blow

im1=双峰(300)
im2=双峰(300’)
im1_rgb=夏季(im1)
im2_rgb=冷(im2)
[x,y]=meshgrid(1:size(im1,2),1:size(im1,1))
数据=im1_rgb/2+im2_rgb/2
子批次(1,3,1)
t颜色(x,y,数据)
等等 [c,h1]=轮廓(x,y,im1)
设置(h1,'LineColor','b')
[c,h2]=轮廓(x,y,im2)
设置(h2,'LineColor','k')
推迟
子批次(1,3,2)
t颜色(x,y,im1_rgb)
等一下
[c,h1]=轮廓(x,y,im1)
设置(h1,'LineColor','b')
推迟
子批次(1,3,3)
t颜色(x,y,im2_rgb)
等一下
[c,h2]=轮廓(x,y,im2)
设置(h2,'LineColor','k')

暂停

请编辑您的问题,清楚地解释“两种不同颜色的混合”是什么意思,一点也不清楚。谢谢您的回答!我添加了一个示例来解释“两种不同颜色的混合”的含义。是matlab central的一个外部函数。它允许在同一个
图形上使用不同的颜色映射,但只能在不同的
轴上使用(不同的子地块)。我认为没有办法在同一个轴上使用两个彩色贴图。您必须创建自己的混合颜色映射,并对数据进行偏移,以便每个颜色映射只在其所属的颜色映射部分建立索引。感谢您的回复!冻结颜色可以在同一轴上使用不同的颜色贴图。我曾经使用3种不同的颜色贴图在同一个轴和图形中绘制三个二维轮廓。我遇到的问题是,我想使用混合颜色贴图来强调部分重叠轮廓的区域。对于其他区域,应保留原始颜色图。感谢您的回复!如果两个轮廓完全重叠,则应使用混合颜色贴图。我遇到的问题是部分重叠的等高线图。对于重叠区域,我希望它显示混合颜色贴图。对于其他区域,应保留原始颜色贴图。