2014-06-04 69 views
1

默認情況下,stretch-to-fill處於打開狀態。所以MATLAB - 軸等於同時拉伸填充?

pixels = ones(100,100) 
image(pixels); 
colormap([0 0 0; 1 1 1]); 

產生

enter image description here

迫使軸是相同的規模,這

pixels = ones(100,100) 
image(pixels); 
colormap([0 0 0; 1 1 1]); 
axis equal; 

產生

enter image description here

顯然,stretch-to-fillaxis equal覆蓋。怎麼做才能讓它們共存?

回答

4

我認爲你正在尋找此調用:

figure(1) 
image(pixels) 
colormap(clr) 
axis image  % <-- this call 

image

這裏有一個表各軸的屬性manipulated各種axismodes

axis_modes_axes_props


您還可以使用imshow功能類似的東西,它充當一個更高級別的包裝,以image/imagesc

figure(2) 
imshow(pixels, clr, 'InitialMag','fit', 'Border','loose') 
axis on 
+0

非常感謝!這幾乎解決了我的問題。但是,爲什麼當我嘗試將其另存爲pdf時,它看起來很模糊,因爲'saveas(gcc,file_name,'pdf');'? [看起來像這樣。](http://i.stack.imgur.com/9JepL.png) –

+0

@FarticlePilter:你在Mac機上嗎?其他人對內置的EPS/PDF閱讀器有這個問題:http://stackoverflow.com/a/6617536/97160。如果是這種情況,請嘗試使用其他查看器 – Amro

+0

是的,我在Mac上!再次感謝偉大的指針!那麼這是否意味着我可以安全地將看起來很模糊的pdf放在我的論文中?其他人會看到它好嗎? –

0

問題是,您的軸限制反映了舊的大小。也許有解決這個問題的一般方法,但手動設置的限制解決它:

xlim([1,100]);ylim([1,100])