2015-05-09 158 views
1

我有大小5×3,其包括3D(X,Y,Z)矩陣A一些點的座標這樣的:如何繪製3D分離系在Matlab

A = [5.2985 0.3737 6.7050; 
    0.5921 2.0948 6.9703; 
    -4.2524 3.8338 6.9863; 
    -3.9856 3.708 2.7925; 
    -3.6727 3.58830 1.2437] 

和矩陣B與尺寸5X3,其包括另一點的三維座標,以及這樣的:

B = [10.715877 -19.59950 3.575112000; 
    14.3055 -17.9177  6.46700; 
    17.67064 -16.201099 9.86076800; 
    14.8090 -16.30260 12.64600; 
    13.412823 -16.49700 13.4652810] 

,並用5×1的尺寸矢量D其包括矩陣A和矩陣B,像這樣的每個點之間的距離的錯誤:

D = [0.001; 
    0.03; 
    0.07; 
    0.06; 
    0.6] 

例如D(1,1)A(1)B(1)D(2,1)之間的距離誤差是距離誤差A(2)B(2)之間等。現在,我的問題是如何將這兩個3D點數據集與它們的距離誤差線繪製在同一個圖中?以及如何以相同的顏色顯示每條距離線及其相應的點?例如,從point1矩陣Apoint1從矩陣B及其距離誤差示出了具有從矩陣B紅色,然後從point2矩陣Apoint2及其距離誤差顯示與藍色等。

這是應該的樣子: desired result

+0

我不明白是什麼你現在想要精確地繪製你編輯你的問題。你需要將可視化的點數?點應該連接? 「距離誤差」應該如何準確可視化?也許你可以想出一個你希望輸出看起來像樣的二維示例版本。 –

+0

@ m.s。首先,THX回答。其次,一般來說,我想將這兩點之間的距離誤差可視化爲一條線。因此,由於距離誤差比這些點之間的距離太小,所以這些點將不會被連接,可以看到的東西是每個相關的具有相同顏色和距離誤差的兩個點(該距離誤差線從第一點開始並且它的方向朝向第二點,我在[Link](http://s000.tinyupload.com/?file_id=76913803535743382344)中附加了一張照片,它顯示我需要形象化,我希望你能幫助我 –

+0

我更新了我的答案,我希望它符合你的期望 –

回答

2

我更新了我的答案,以反映您的意見:

hold on; 

BA = B-A; 
cc=hsv(size(A,1)); 

for k = 1:size(A,1) 
    scatter3([A(k,1),B(k,1)],[A(k,2),B(k,2)],[A(k,3),B(k,3)],'MarkerFaceColor',cc(k,:), 'MarkerEdgeColor', 'none'); 
    plot3([A(k,1),A(k,1)+BA(k,1)*D(k)],[A(k,2),A(k,2)+BA(k,2)*D(k)],[A(k,3),A(k,3)+BA(k,3)*D(k)],'-', 'Color', cc(k,:)); 
end 
hold off; 

導致情節:

plot

+0

THX男人。這正是我需要的 –