plot绘图的智能操作好还是坏呢

关于plot做图,现在发现是被matlab包装过的,需要特别小心:

一、两个都是向量时,只要两者的个数一样,行列随意搭配,不影响做图效果:

a=linspace(0,1,20);
b=2.^a;
subplot(221)
plot(a,b);
xlabel('a');
ylabel('b');
subplot(222)
plot(a',b);
xlabel('a1');
ylabel('b');
subplot(223)
plot(a,b');
xlabel('a');
ylabel('b1');
subplot(224)
plot(a',b');
xlabel('a1');
ylabel('b1');

结果:testPlot1

二、其中有一个是矩阵时

a=linspace(0,1,20);
b=2.^a;
subplot(221)
plot([a,a,a],[b,2*b,3*b]);
xlabel('aaa');
ylabel('b2b3b');
subplot(222)
plot(a,[b;2*b;3*b]);
xlabel('a');
ylabel('b2b3b');
subplot(223)
plot(a',[b;2*b;3*b]);
xlabel('a1');
ylabel('b2b3b');
subplot(224)
plot(a',[b;2*b;3*b]');
xlabel('a1');
ylabel('b2b3b1');

结果:testPlot2

  对图1的说明:由于分别画了3条线,3条线横坐标均为a,纵坐标分别为b,2b和3b,由于组合成一个行向量,所以第一条线的末端与第二条线的起始端相连接,第二条末端连接第三条的始端。

  多图2,3和4来说,无论向量怎么变换,只要纵坐标能按列的形式与横坐标大小一致,都能完成做图操作。

  但是对行向量a来说,[a 2*a 3*a]与[a; 2*a; 3*a]'是完全不同的,前者是一个行向量,后者是个n行3列的矩阵。

 

posted @ 2026-06-22 12:36  叕叒双又  阅读(4)  评论(0)    收藏  举报