【发布时间】:2015-07-22 22:08:12
【问题描述】:
在 Matlab 中,我使用 imagesc 在使用 imshow 的图像上绘制矩阵(我们称之为 M)。我希望 M 具有一定程度的透明度,因此我实际上可以看到下面的图像。这就是我正在做的:
imshow(img); hold on;
h = imagesc(M);
set(h,'AlphaData',0.4); % set transparency to 40%
但是,最后一行在 Linux 上运行时会产生错误。我一直在尝试解决它,但似乎没有任何效果。我想知道是否有替代“AlphaData”属性的方法来使其透明。谢谢!
编辑:我在 Linux CentOS 6.6 上使用 Matlab R2014a 和 Java 1.7
【问题讨论】:
-
get(gcf,'renderer')返回什么? (这将告诉您当前的渲染器)。还有set(gcf,'renderer')? (这是可能的渲染器列表)。尝试将渲染器设置为与您当前使用的不同的渲染器。一些渲染器不支持透明度。 (在 Windows 上,我认为只有'opengl'可以) -
你试过
alpha(.4)甚至set(h, 'alpha',.5);吗? -
谢谢,路易斯。这样就解决了!
-
我只需要从调用“matlab -softwareopengl”的终端启动matlab即可更改为OpenGL渲染器
-
将其作为答案发布?对于遇到同样问题的 Linux 用户可能会有所帮助
标签: linux matlab matlab-figure alpha-transparency