Saving an image with no gui
8 次查看(过去 30 天)
显示 更早的评论
I'm trying to run a program in the background that periodically checks an archive for % completion and then creates a figure of some progress bars that I made. Everything works fine when I run it through the gui, but this is part of a much larger workflow than I'm setting up and having the gui run is just not an option. I need to run it in the background, and right now I'm using the command
$MATLAB/bin/matlab -nodisplay -nosplash -nodesktop
from my mac terminal.
Now, the problem is, when I run the program in this way, when I go to save the figure, it only grabs a small 560x420 rectangle in the middle, however, from the gui it grabs the full image (I forget exactly what it is, but it's 3-4k on the long side). I really want this to save the whole image both ways, but I don't know why this is happening. Below is how I'm saving the figure, for reference.
h = figure(1);
set(h,'OuterPosition', [0, 0, 1680, 1050])
Other code for filling figures
set(h, 'PaperPositionMode', 'auto')
saveas(h,'/Users/johnsalter/Dropbox/KeplerMaster/Progressbars','png')
Any ideas?
3 个评论
Image Analyst
2021-3-17
Have you tried exportgraphics() or copygraphics(), available with r2020a or later?
Jeffrey Boucher
2021-3-17
编辑:Jeffrey Boucher
2021-3-17
I have not, I will look into those, thanks! If they work, I'll let you know.
回答(2 个)
Quattro
2011-8-17
Hi Steven,
Maybe this peace of code will help you. I used this code to save images without showing/plotting them, because I also wanted to run the script in the background or server side open remote window, though on Windows machines....
figure, imshow(<yourimage>),
set(gca, 'position', [0 0 1 1], 'visible', 'off')
% hold on % optional
% text(10,10,<'yourtext'>, <more props to set>,'');
% hold off
I = getframe(gcf);
I=frame2im(I);
fullname=sprintf('%s/%s',<yourpath>,<yourfilename>);
imwrite(I,fullname,'Quality',100);
Success,
Quattro
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Printing and Saving 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!