2011-12-14 57 views
6

我正在使用八度音階,我需要撥打plot3兩次或多次才能生成一個圖形。但它只繪製plot3的最後一個呼叫。我需要一些幫助。八度音程中的多次劇情調用

這是我的代碼: 只繪製行plot3(tras(1), tras(2), tras(3), 'bo');

p = [ 0.0, 0.0, 0.0 
      500.0, 0.0, 0.0 
      500.0, -500.0, 0.0 
      0.0, -500.0, 0.0 
      0.0, 0.0, 0.0]; 
    mano = [119.818542 -43.371277 50.230591 1]; 

Tinv = [ 
0.998891 -0.001007 0.047065 64.223625 
0.000000 0.999771 0.021382 -291.750854 
-0.047076 -0.021359 0.998663 -1871.334229 
0.000000 0.000000 0.000000 1.000000 
] 

tras = Tinv*mano' 

hold("on"); 
xlabel("X"); 
ylabel("Y"); 
zlabel("Z"); 

plot3(p(:,1), p(:,2), p(:,3), 'r*-'); 
plot3(tras(1), tras(2), tras(3), 'bo'); 

hold("off"); 
pause; 
+0

我認爲你的腳本可以正常工作。用plot3(p(:,1),p(:,2),p(:,3),'r *',「markersize」,20);來檢查點是否有效。 – Woltan 2011-12-15 07:01:51

回答

5

你的繪圖代碼是好的。嘗試使用axis函數將繪圖區擴大。以下變化:

% ... 

% Usage of axis: axis([xmin xmax ymin ymax zmin zmax]) 
axis([-100 600 -600 100 -2100 100]); 
plot3(p(:,1), p(:,2), p(:,3), 'r*-'); 
plot3(tras(1), tras(2), tras(3), 'bo');  

% ... 

結果在下面的情節: enter image description here

理想情況下,你會作出的範圍值axis相對最小和ptras最大座標值。

+0

謝謝!!!!!我非常感謝你的回答,這讓我瘋狂 – Herman 2011-12-21 18:51:57