圖像的傳說我有以下代碼:字號爲在Matlab
X = 0:pi/100:0.25*pi;
Y1 = sin(X);
Y2 = cos(X);
Y3 = tan(X);
fh = figure('toolbar','none','menubar','none','Units','characters');
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.125 0.1 0.75 0.75]);
hplot = plot(haxes,X,Y1,X,Y2,X,Y3);
xlabel(haxes,'Time (second)');
ylabel(haxes,'Amplitude (meter)');
title(haxes,'Trigonometric functions');
Ley = {'Sine function','Cosine function','Tangent function'}; %# legend's strings values
legend(haxes,Ley,'Location','SouthOutside');
[FileName,PathName,FilterIndex] = uiputfile('*.bmp;*.png;*.jpg;*.tif','Save as');
ftmp = figure('Menu','none','Toolbar','none','Units','normalized',...
'Position',[-1000 -1000 1 1]);
set(gcf,'PaperPositionMode','auto');
set(gcf,'InvertHardcopy','off');
new_axes = copyobj(haxes, ftmp);
legend(new_axes,Ley,'Location','SouthOutside','FontSize',8);
set(new_axes,'Units','normalized','Position',[0.1 0.1 0.8 0.8]);
fmtgraf = {'-dbmp','-dpng','-djpeg','-dtiff'};
fmt = fmtgraf{FilterIndex};
print(ftmp,fmt,FileName,'-r0');
delete(ftmp);
delete(fh);
如上代碼,在命令行
傳說(new_axes,萊伊, '位置', 'SouthOutside' 可見, '字號',8);
在命令行
set(new_axes,'Units','normalized','Position',[0.1 0.1 0.8 0.8]);
因爲它的之前運行時,圖像似乎通過其低部板缺如下面 (獨立地存在或不屬性/值「字號」的存在)觀察
如果在命令行
legend(new_axes,Ley,'Location','SouthOutside','FontSize',8);
在命令行之後運行
set(new_axes,'Units','normalized','Position',[0.1 0.1 0.8 0.8]);
現在圖像通過其低部板缺但在這種情況下,它是沒有看到既不xlabel文本也不圖例框(如下所示)
如果'FontSize',8
被抑制,一切正常。如果我希望圖例的尺寸較小,我該如何解決這個問題?
謝謝你的回答。我已經做了一些基於它的證明,並且我編輯了我的問題以包含它們。我認爲(儘管我不確定)我的問題有兩個原因:我的寬屏尺寸和屬性'FontSize'的更改。尊重後者,Matlab文檔幫助指出:「圖例字符串的字體大小和字體名稱與軸的FontSize和FontName屬性相匹配」。所以,如果我通過命令圖例更改它,那麼軸的FontSize也會改變。 – julian
@jpeji:我正在提出一個不同的解決方案,請參閱我的編輯。 – Amro
謝謝你的回答。 – julian