如何绘制矢量的投影?

how to plot the projection of a vector?

我编写了如下计算矢量投影的程序:

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;

但我无法看到投影,我错过了什么?

谢谢

您可以使用 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));