2015-04-19 163 views
2

關於這個問題有很多類似的問題,過去他們幫助我得到我想要的東西,然而看起來改變到2015年的事情變得不再一樣了。尺寸打印的Matlab圖

我想從Matlab中導出數字爲.eps,大小爲4 x 3英寸,因此它們將適合我在乳膠上所做的操作。即使.eps是一種矢量格式,並且可以很好地縮放,但我想確保數字上的字體大小是正確的,所以重要的是它的大小設置正確。通常的建議是設置人物屬性,所以:

set(gcf, 'PaperUnits', 'inches', 'PaperPosition', [0 0 4 3], 'PaperPositionMode', 'auto'); 

這樣做不會爲我設置.EPS 4×3英寸,它似乎在頁面縮放到數字,而不是數字的頁面。如果我不將PaperPositionMode設置爲自動,則頁面確實以4 x 3英寸輸出,但該圖太大並且被裁剪。無論我指定PaperPosition(大小),圖形本身都不會縮放到頁面。

爲什麼PaperPositionMode'auto'忽略我指定的紙張尺寸?如何指定圖形大小而不是紙張大小?

在Arch Linux上使用Matlab R2015a。以下是我正在使用的代碼。

FNO = load('data/forced_no_oil'); % forced no oil 
FWO = load('data/forced_with_oil'); % forced with oi 

fig1 = figure; 
plFNO = plot(FNO(:,1),FNO(:,2),'x'); 
hold on 
plFWO = plot(FWO(:,1),FWO(:,2),'x'); 

xl1 = xlabel('Frequency (Hz)'); 
yl1 = ylabel('Displacement Amplitude'); 
legend('Forced Without Oil','Forced With Oil') 

set(fig1, 'PaperUnits', 'inches', 'PaperPosition', [0 0 8 6], 'PaperPositionMode', 'auto'); 
print('-depsc','../latex/images/frequencyDisplacement.pdf') 
+0

你可以嘗試生成PDF而不是EPS嗎?這是在[這裏]提到的(http://www.mathworks.com/matlabcentral/answers/161448-r2014b-problem-exporting-eps)。 –

+0

chaning -depsc到-dpdf,文件創建的A4大小,我認爲是默認的。 PaperPositionMode自動將圖形居中,而手動將其任意放置。該圖再次沒有縮放到頁面。 我將使用我正在使用的代碼更新OP。 –

回答