在Matlab中绘制三维点,并通过直线按顺序连接
我有一个包含三维浮点的数组。我不仅想把它们描绘成一个图形,还想用线条把它们连接起来 示例)假设我们有一个名为X的数组:在Matlab中绘制三维点,并通过直线按顺序连接,matlab,mesh,matlab-figure,scatter-plot,Matlab,Mesh,Matlab Figure,Scatter Plot,我有一个包含三维浮点的数组。我不仅想把它们描绘成一个图形,还想用线条把它们连接起来 示例)假设我们有一个名为X的数组: X=[0, 0, 0; 0.48, -0.88, 0.09; -1.06, 0.55, 0.9; -0.65, 1.5, -1.44; 1.1, 0.59, -1.11;0.76, 0.86, -0.52; -1.08, -0.28, 0.55; 1.47, -1.21, 0.14; 1.42, -2.15, 0.71; -0.64, 1.87, 2.4;2.32, -2.
X=[0, 0, 0; 0.48, -0.88, 0.09; -1.06, 0.55, 0.9; -0.65, 1.5, -1.44; 1.1, 0.59,
-1.11;0.76, 0.86, -0.52; -1.08, -0.28, 0.55; 1.47, -1.21, 0.14; 1.42, -2.15, 0.71; -0.64,
1.87, 2.4;2.32, -2.44, 2.02; 2.25, -2.56, -3.03; 2.35, 2.65, -1.5; 0.23, -2.25, 2.78; 2.47,
-3.12, -1.91; 2.27, 1.37, -3.05; 2.3, 1.9, -1.29; -1.77, -0.51, 2.33];
X1= [0,0,0]
X2=[0.48, -0.88, 0.09]
X3=[-1.06, 0.55, 0.9] ...
现在我想让X1…Xn在图中画成点,然后X1连接到X2,X2连接到X3,X3连接到X4,等等
我怎么能这么做
以下是我所做的,但我得到了一个错误的数字:
figure;hold on;
P=[];
for i=1:size(X,1)
x=X(i,1);
y=X(i,2);
z=X(i,3);
A=[ x,y,z];
P=vertcat(P,A);
plot(P);
end
以下是输出:
请查看
特别是,plot3(X,Y,Z)
将绘制点并用线连接它们
就你而言:
plot3(X(:, 1), X(:, 2), X(:, 3))
注意-
matplotlib
与在matlab
中绘图不同,因此我删除了标记。@mathematic.coffe:1。我只是想澄清一下,plot3(X(:,1),X(:,2),X(:,3))是否意味着对于所有三维点(v1,v2,v3),每个点都在一行中,将它们连接在一起?2.如何在绘图上为轴命名?plot3(X,Y,Z)
使用X坐标X
、Y坐标Y
、Z坐标Z
,将这些点连接在一起(阅读文档了解更多信息;我在答案中提供了链接)。在文档的底部有一个示例,其中还设置了轴的名称,因此您可以从中了解如何执行此操作。谢谢,下面是答案:plot3(X(:,1),X(:,2),X(:,3));xlabel('X');ylabel('Y');兹拉贝尔('Z');网格化;