Matlab:我在3D绘图中有两个点,我想用一条线连接它们

时间:2013-06-17 20:44:00

标签: matlab 3d line point points

我有一个3D图和两个点坐标A(0,0,0)和B(13,-11,19)。我只是想绘制一条连接这两点的可见线......我尝试了plot3(0,0,0,13,-11,19)和其他东西,但我试过的一切都很糟糕。

1 个答案:

答案 0 :(得分:4)

以下是:

% Your two points
P1 = [0,0,0];
P2 = [13,-11,19];

% Their vertial concatenation is what you want
pts = [P1; P2];

% Because that's what line() wants to see    
line(pts(:,1), pts(:,2), pts(:,3))

% Alternatively, you could use plot3:
plot3(pts(:,1), pts(:,2), pts(:,3))

不可否认,一开始这看起来有点违反直觉,但从长远来看,这是有道理的。

如果您阅读doc plotdoc line,您会看到每个人都希望xy和{{1}的数据,分别。也就是说,使用

z

plot3(X,Y,Z) XY一些矩阵,Z将从第一个三元组中划出一行(plot3 )到第二个三元组(X(1) Y(1) Z(1))等等 - X(2) Y(2) Z(2)相同。