我制作了以下用于计算矢量投影的程序:
a=[6 7]
b=[1 4]
p=(dot(a,b)/(b*b'))*b
p的结果是[2 8],它是a b的投影。
我读到,为了在Matlab中绘制矢量,我应该选择一些原点,所以我将它们添加到矢量中并与它们形成一组矩阵,如下所示:
x=[0 0; 6 7]
y=[0 0; 1 4]
z=[0 0; 2 8]
plot3(x,y,z)
grid;
但是我无法想象投影,我缺少什么?
由于
答案 0 :(得分:1)
您可以使用quiver
进行2D矢量绘图,或使用quiver3
进行3D绘图。
a = [6 7];
b = [1 4];
p = (dot(a,b)/dot(b,b))*b;
figure;
quiver(0,0,a(1), a(2));
hold on;
quiver(0,0,b(1), b(2));
quiver(0,0,p(1), p(2));