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

时间:2014-01-05 21:46:53

标签: matlab matrix plot

我试过这种方式:

    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的矩阵。

1 个答案:

答案 0 :(得分:1)

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

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,:))