Saving figures with transparent patches / objects - figure background turning black
12 次查看(过去 30 天)
显示 更早的评论
Hi,
I have an issue trying to print (or save using export_fig etc.) a plot that has some transparent patches - these are histogram bars and the transparency has been set using 'facealpha' for example
(h3,'facecolor',rgb('orange'),'facealpha',0.9);
When coming to print/save this figure, in the final saved figure the background colour is black. I've tried both the print and export_fig function to print to png but I can't get around this issue. Any ideas? Thanks.
0 个评论
回答(1 个)
Christiaan
2015-4-29
编辑:Christiaan
2015-4-29
Dear Sir/Madame,
Please try the following example. It makes an 3D plot, makes it transparant and saves it as a png.
clc;clear all;close all;
fig1=figure(1);
[x,y] = meshgrid([-2:.2:2]);
z = x.*exp(-x.^2-y.^2);
h1=surf(x,y,z,gradient(z));
set(h1,'facecolor','r','facealpha',0.3)
set(gca,'color','none')
print('plot','-dpng')
If you have plotted this figure, you can go in the figure GUI to edit-> copy figure. Now, if you paste this in a text programm (i.e. Word) you obtain a transperant figure also in Word.
Good luck! Christiaan
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Lighting, Transparency, and Shading 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!