如何显示保存为图像的多个图

时间:2012-05-19 11:40:30

标签: matlab

如果我使用saveas命令将多个图保存为图像,我该如何显示它们。我正在使用的代码是:

if we==1
    figure()
    saveas(gcf(),'myownfile.jpg'); % save the figure if condition is satisfied  
    clf % clear the figure after saving it
end

如果我们== 1,程序会检查条件,然后在保存图表后清除图形。它是功能的一部分。而在功能中保存为图像的图必须显示在主函数中。代码是:

p=imread('myownfile.jpg');% read the image
imshow(p); %show the image

但我得到一个空白的数字。我不知道为什么?

3 个答案:

答案 0 :(得分:0)

()可能导致某些问题后,您的代码中可能存在gcf

固定代码:

if we==1
    figure()
    saveas(gcf,'myownfile.jpg'); % save the figure if condition is satisfied  
    clf % clear the figure after saving it
end

答案 1 :(得分:0)

我总是使用print命令,因为它可以让你获得更多控制权。

print(gcf, '-djpeg', '-r400', 'myownfile.jpg')

如果我不得不猜测你遇到的问题,我敢打赌你需要把它称为:saveas(gcf,'myownfile.jpg','jpg'); 因为Matlab在这方面可能非常愚蠢。

另一个可能的问题是渲染器(使用get/set(gcf,'Renderer')) - 其中一些无法保存。

答案 2 :(得分:0)

这是解决方案。感谢您的帮助。通过删除命令figure()并在上面的代码中添加命令saveas(gcf(),strcat('myownpic',strcat(int2str(m1),'.jpg')));将解决问题。