如何在 MATLAB 中绘制矩阵 3x2 的跨度



我尝试了这种方式:

    gl1 =
   -2.5000   -1.0000
    4.3301    1.7321
    0         0
syms a b
span=gl1(:,1)*a+gl1(:,2)*b
a=[-100:0.1:100];
b=[-100:0.1:100];
span=eval(span)

然后我会做plot3(span)。不幸的是,在最后一行,它给了我这个错误:

Error using vertcat
Dimensions of matrices being concatenated are not consistent.
Error in sym/eval (line 11)
s = evalin('caller',vectorize(map2mat(char(x))));

知道吗?我找到有人使用多面体方法来做到这一点,但我不知道我在哪里可以得到,或者我怎样才能实现这种方法。

谢谢你的建议。

编辑:在这种情况下,跨度应该是一条线,因为我的矩阵的秩是 1,但问题代表秩为 2 的矩阵。

为什么要使用符号?这就像一个魅力:

gl1 =
   -2.5000   -1.0000
    4.3301    1.7321
    0         0
a=[-100:0.1:100];
b=[-100:0.1:100];
span=gl1(:,1)*a+gl1(:,2)*b

请记住,你需要几个输入来plot3,即x,y和z值。因此,它应该是这样的:

plot3(span(1,:),span(2,:),span(3,:)) 

最新更新