2013-03-27 219 views
0

我有一個叫做myval的2d矩陣。它的大小是21x11。我有一個關於matlab數字的問題。我在matlab中使用bar3函數,並想調整我的座標軸

我想要做的只是繪製前11行和所有列,即11x11。所以我在matlab中使用bar3函數來做到這一點,這給了我一個很好的情節。

現在z軸是存儲在myval矩陣中的實際值。但是恰巧我想讓x和y軸的值(代表相應的行和列)從0開始。 (1,1)的值將是(0,0),(1,2)的值將是(0,1)。我不想更改myval矩陣中的實際值。我只是想換軸。 這是我的實際代碼

 bar3(myval(1:t,:)); 
    xlim([0 p]); 
    ylim([0 t]); 
    zlim([0 1); 
    set(gca,'fontsize',16); 
    set(gca,'XTick',(0:2:p)); 
    set(gca,'YTick',0:2:t); 
    set(gca,'ZTick',0:1); 
+0

對這一問題的措辭方式,目前尚不清楚在所有你想要 – neuronet 2015-03-11 15:31:08

回答

0

你需要給bar3兩者的X和Y輸入,則該列將出現在你想要他們。

x = 0:10; 
Y = myval(1:t,:); 
bar3(x,Y) 

或者,要控制好兩個X和Y軸,您可以使用:

x = 0:10; 
bar3(Y) 
set(gca,'YTickLabel', x) 
set(gca,'XTickLabel', x) 
+0

我試圖做的是什麼。讓我真實地讓它更精確我想要的。在x和y軸上的位置1處,我想要值0,依此類推。我可以轉到軸屬性並手動執行。但是當我需要非常頻繁地使用它時,它非常乏味。 – hey123 2013-03-27 18:48:47

+0

我發現tick是用來設置圖形上的tick位置,而ticklabel是用來標記那些打勾位置的特定ticks。 – hey123 2013-03-27 20:37:24

+0

@Molly的問題是你如何給實際的X/Y值的情節,而不僅僅是改變他們的標籤。只是改變標籤是不夠的,例如,如果你想用scatter3或其他東西來添加更多的點。 – neuronet 2015-03-11 15:30:35