Transparent figure Matlab 2020

조회 수: 321(최근 30일)
Jose Sosa Lopez
Jose Sosa Lopez 2020년 7월 8일
답변: Richard Quist 2022년 3월 30일
How to copy a figure with transparent background?

채택된 답변

Jose Sosa Lopez
Jose Sosa Lopez 2020년 7월 8일
If the graph is in figure 1, put in the command window of matlab:
figure (1)
set(gcf, 'color', 'none');
set(gca, 'color', 'none');
Then go to the figure, edit----> copy figure, and you can paste wherever you want, it will be with transparent background.

추가 답변(1개)

Richard Quist
Richard Quist 2022년 3월 30일
If you want to do this programmatically and have MATLAB version R2020a or later you can use the copygraphics function with the BackgroundColor and ContentType parameters, without having to change the figure or axes color properties:
copygraphics(gcf, 'BackgroundColor', 'none', 'ContentType', 'vector');
In this case, I specified 'ContentType', 'vector' to ensure that the output is "true" vector (fully scalable) and isn't copied as a raster/bitmap image. If hadn't specified that MATLAB would look at the figure contents and decide what format to copy to the clipboard.
In earlier versions of MATLAB you would have to change the figure and axes colors and use the print function for this and specify the '-painters' flag to ensure the output is true vector:
set(gcf, 'color', 'none');
set(gca, 'color', 'none');
print(gcf, '-dmeta', '-painters');

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by