在matlab中,使用plot3函数可以通过两点绘制三维直线,语法如下:
设点A为(a1,a2,a3),B为(b1,b2,b3)
plot3([a1,b1],[a2,b2],[a3,b3]);
通过矩阵绘制起点为原点的向量举例如下:
A = [ 1.0000000e-06 1.0000000e-06 1.0000000e+00
1.0000000e-06 2.5000000e-01 7.5000000e-01
1.0000000e-06 5.0000000e-01 5.0000000e-01
1.0000000e-06 7.5000000e-01 2.5000000e-01
1.0000000e-06 1.0000000e+00 1.0000000e-06
2.5000000e-01 1.0000000e-06 7.5000000e-01
2.5000000e-01 2.5000000e-01 5.0000000e-01
2.5000000e-01 5.0000000e-01 2.5000000e-01
2.5000000e-01 7.5000000e-01 1.0000000e-06
5.0000000e-01 1.0000000e-06 5.0000000e-01
5.0000000e-01 2.5000000e-01 2.5000000e-01
5.0000000e-01 5.0000000e-01 1.0000000e-06
7.5000000e-01 1.0000000e-06 2.5000000e-01
7.5000000e-01 2.5000000e-01 1.0000000e-06
1.0000000e+00 1.0000000e-06 1.0000000e-06
];
b = zeros(size(A,1),1);
x = A(:,1);
y = A(:,2);
z = A(:,3);
for i = 1:size(A,1)
scatter3(A(i,1),A(i,2),A(i,3),'k','red');
hold on;
plot3([A(i,1),0],[A(i,2),0],[A(i,3),0],'blue');
hold on;
end
结果如下图: