我想在色彩Map表中定义一种透明颜色,我该怎么做呢?我需要它的原因是我的axes(由imagesc和plot生产)中有多个层。我知道我可以简单地先使用imagesc,然后使用plot,但我想在imagesc表示的非零值后面画一条线。为了把零涂成白色,我用了
axes
imagesc
plot
jet = colormap('jet'); jet(1:2,:) = 1; colormap(jet);
现在我想让白色变得透明。
laik7k3q1#
colormap没有Alpha的第四个元素,它只有RGB,所以我做这类事情的方法是制作一个所需透明度层的蒙版-二进制或灰度都可以-然后将其应用于图像。为此,您需要存储图像的句柄
colormap
% make random image im = rand(100,100); % make example alphamask alphamask = im<0.3; % store handle hnd = imagesc(im); % apply mask set(hnd, 'AlphaData', alphamask);
1条答案
按热度按时间laik7k3q1#
colormap
没有Alpha的第四个元素,它只有RGB,所以我做这类事情的方法是制作一个所需透明度层的蒙版-二进制或灰度都可以-然后将其应用于图像。为此,您需要存储图像的句柄