2012-04-20 221 views
0

我想創建一個等高線圖(帶有顏色條),它具有完美的方形輪廓圖,用於審美/數據解釋的原因。如何在MATLAB中使用colorbar進行完美的方形繪圖?

示例代碼:

x=-10:10; 
y=-10:10; 
[X Y] = meshgrid(x,y); 
f = figure('Visible','off'); 
contour(X,Y,X.*Y,'Fill','on'); 
colorbar 
x_size = 10; 
y_size = 10; 
set(f, 'PaperUnits', 'inches','PaperPosition',[0 0 x_size y_size]); 
print(f, '-depsc2','notsquare.eps); 

有一種方法,以控制只是等高線圖區域的尺寸,使得其將是完美的正方形?

回答

2

這對我的作品(添加axis equal):

x=-10:10; 
y=-10:10; 
[X Y] = meshgrid(x,y); 
f = figure('Visible','off'); 
contour(X,Y,X.*Y,'Fill','on'); 
colorbar, axis equal 
x_size = 10; 
y_size = 10; 
set(f, 'PaperUnits', 'inches','PaperPosition',[0 0 x_size y_size]); 
print(f, '-depsc2','square.eps'); 
+0

謝謝!看着'axis equal',數據被繪製爲正方形,但在繪圖框中留下一些空白; 「軸線正方形」正是我想要的。 – andyras 2012-04-20 17:01:54