Matlab中的AlphaData替代方案

时间:2015-07-22 11:34:38

标签: linux matlab matlab-figure alpha-transparency

在Matlab中我正在使用imshow在图像上使用imagesc绘制矩阵(我们称之为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

1 个答案:

答案 0 :(得分:2)

Luis Mendo所示,我只需要更改渲染器。你可以:

>get(gcf,'renderer'); % to see which render engine is Matlab using
>set(gcf,'renderer'); % to get a list with all the possible renderers in your machine

所以,至少在Linux中,要更改渲染器,从终端启动Matlab需要将其调用为:

matlab -softwareopengl 

完成此操作后,可以在特定情节中设置透明度,如问题说明中所示。