【发布时间】:2011-12-30 10:22:57
【问题描述】:
我设计了以下 GUI,其中有一个轴。我想将在其中绘制的图保存到 jpeg 文件中。但是,获得的文件是整个图形窗口的图像。这是我的代码:
X = 0:pi/100:2*pi;
Y = sin(X);
fh = figure;
Pan1 = uipanel(fh,'Units','normalized','Position',[0 0 0.5 1],'title',...
'Panel1');
Pan2 = uipanel(fh,'Units','normalized','Position',[0.5 0 0.5 1],'title',...
'Panel2');
haxes = axes('Parent',Pan2,'Units', 'normalized','Position',...
[0.25 0.25 0.5 0.5]);
hplot = plot(haxes,X,Y);
xlabel(haxes,'Time (second)');
ylabel(haxes,'Amplitude (meter)');
title(haxes,'Sine function');
FileName = uiputfile('*.jpg','Save as');
saveas(hplot,FileName);
【问题讨论】:
-
与您的问题无关,但为什么要使用 jpg 格式的情节?那会引入人工制品。
-
@bos:我认为图像的最佳格式是 jpeg。如果我错了,请告诉我。
-
我将 .png 用于我想要保存为图像的所有 MATLAB 绘图。它们比 .jpg 干净得多。这个article 解释说:“PNG 最适合带有硬线的矢量图形。”
-
@Doresoom:感谢您的评论和提供的链接。
-
也许“在 Matlab 中将子图保存为 JPEG 文件。”会是一个更好的标题吗?
标签: user-interface matlab image-processing plot save