2015-03-13 128 views
1

我想在Matlab中創建一個長度是其長度兩倍的圖。我嘗試使用PositionPaperPositionMode以下this question的建議,像這樣:如何讓Matlab繪圖填充整個頁面?

figure 
set(gcf,'PaperPositionMode','auto'); 
set(gcf, 'Position', [0 0 100 200]); 
barh(1:20); 
print('test', '-dpng'); 

煩人的,這種調整大小的紙張大小,但不會情節,如下圖所示。

a large plot on undersized paper

有沒有什麼辦法,使具有指定寬度和高度的圖形?我在無頭服務器上運行此操作,因此單擊和拖動或任何其他GUI特定的解決方案都不是一種選擇。顯然我並不想要100x200的情節,我只是想讓這個數字小到足以適應這個問題。

回答

1

您可以嘗試設置紙張大小和單位。 There's a similar question on Mathworks。相關內容:

set(0,'defaultfigurepaperunits','inches'); 
set(0,'defaultfigurepaperorientation','landscape'); 
set(0,'defaultfigurepapersize',[8.5 11]); 
set(0,'defaultfigurepaperposition',[.25 .25 [8.5 11]-0.5]); 

其中set(0, ...)設置根圖形系統值。你也可以用你的身材。希望這可以幫助。

+0

太好了,謝謝。奇怪的是,這不是默認行爲。 – rmccloskey 2015-03-13 18:45:32