2012-11-20 63 views
1

我寫了一個圖形用戶界面,讓不同規模的MATLAB插曲,我正在尋找一種通用的方式來擠壓次要情節一起。 Subaxis適用於垂直間距,但不影響水平間距。如何減少副區周圍的邊界MATLAB和subaxis不起作用

什麼是擠在一起的最簡單的方法? An example of one of the output figures它是生產用在下面的代碼迴路

subaxis (1+ceil(max(zindex)/5),5,5+i, 'Padding', 0, 'Margin', 0,'SpacingHoriz',0.0001,'SpacingVert',0.009); 
+0

你能告訴你怎麼稱呼subaxis?它應該以類似的方式進行水平和垂直「擠壓」。 –

+0

@DennisJaheruddin在一個循環subaxis(1個+小區(MAX(Z-索引)/ 5),5,5 + 1, '填充',0, '保證金',0, 'SpacingHoriz',0.0001, 'SpacingVert',0.009) ;情節的形狀 –

回答

2

它看起來像你的身材尺寸比你有曲線的數量不同的方式。如果你定義了你的身材尺寸,Subaxis效果最好,你應該根據你有多少情節選擇縱橫比。

的例子

你有13×5次要情節,但你的人物的長寬比更像是7:13。因此,垂直方向的地塊靠得很近,但有很多水平的白色空間。

繪製之前,請嘗試定義像你的身材:

nRows=13; 
nCols=5; 
PlotWidth=3; %This is your Plot width in cm. 
FigW=nCols*FigWidth; 
FigH=nRows*FigWidth; %Note: I'm assuming the plots are square 
Figure1=figure(1);clf; 
set(Figure1,'PaperUnits','centimeters',... 
     'PaperSize',[FigW FigH],... 
     'PaperPosition',[0,0,FigW,FigH],... 
     'Units','centimeters','Position',[1,9,FigW,FigH]); 

,看看你的身材間距看起來更好。幾個筆記,如果你想使用'英寸'而不是釐米,那很好。另外,我沒有在我的紙上繪出任何利潤(定義紙張尺寸和輸出紙張位置是很有用的)。如果你想要一個保證金,你可以嘗試這樣的:

Mgn=1; 
set(Figure1,'PaperUnits','centimeters',... 
     'PaperSize',[FigW+2*Mgn FigH+2*Mgn],... 
     'PaperPosition',[Mgn,Mgn,FigW,FigH],... 
     'Units','centimeters','Position',[1,9,FigW,FigH]); 

然後,您可以導出使用MATLAB的print命令添加到您選擇的格式。