plot([0 u(1,1)], [0 u(2,1)]);
plot([0 u(1,2)], [0 u(2,2)]);
这些命令可以满足我的需求。但是,为什么前面的零。
这些命令的效果是page上的第二个图:
答案 0 :(得分:1)
0用于表示绘图边界;因为Matlab需要有x和y的起始值和结束值。
例如,在本声明中:
plot([0 u(1,1)], [0 u(2,1)]);
第一个方括号中的2个项表示要绘制的x值的范围,即从0到u(1,1),而第二个方括号中的那些表示y值。它基本上绘制了一条从(x1,y1)到(x2,y2)的线,其中x1和y1为(0,0),x2为u(1,1),y2为u(2,1)。
根据你给出的代码,你看起来像这样:(我没有向你展示整个解决方案,因为这是作业:)
u =
-0.7055 -0.7087
-0.7087 0.7055
因此,对应于上述行的行将具有从0到u(1,1)= -0.7055的x值,并且y值从0到u(2,1)= -0.7087。这同样适用于第二次绘图。
这是用数据得到的图;我用不同颜色绘制了两条曲线,以便您可以看到差异:(我使用@ knedlsepp'建议使用axis equal
来看两条线都是正交的。
希望有助于您入门。祝你好运!