Matlab 绘图:解释输出

Matlab 绘图:解释输出,matlab,octave,Matlab,Octave,我正在尝试一个简单的八度音阶的情节: >> y = [ 1 1 1 ; 0 1 0] y = 1 1 1 0 1 0 >> plot(.1:.1:.2,y,'b') 我得到以下输出: 我无法理解打印输出-y的值(即1,1,1,0,1,0)在哪里打印以及为什么渲染对角线 当我尝试不同的组合时,比如: >> y = [ 1 0 0 ; 0 1 0] y = 1 0 0 0 1 0 >>

我正在尝试一个简单的八度音阶的情节:

>> y = [ 1 1 1 ; 0 1 0]
y =

   1   1   1
   0   1   0

>> plot(.1:.1:.2,y,'b')
我得到以下输出:

我无法理解打印输出-y的值(即1,1,1,0,1,0)在哪里打印以及为什么渲染对角线

当我尝试不同的组合时,比如:

>> y = [ 1 0 0 ; 0 1 0]
y =

   1   0   0
   0   1   0

>> plot(.1:.1:.2,y,'b')
该图如下:

>> y = [ 1 0 0 ; 0 1 0 ; 0 0 1]
y =

   1   0   0
   0   1   0
   0   0   1

>> plot(.1:.1:.3,y,'b')


我们如何从提到要绘制的y值推断出绘图图?

来自文档:

如果x是向量,y是矩阵,则y的列(或行)与x相对。(使用匹配的组合,首先尝试列。)


在第一种情况下,您绘制的是对角线[1;0],[1;1]被轴隐藏,并且[1;0]再次显示打印函数的工作方式:您给出一些x值和相同数量的y值,它将打印它们

但是,您也可以为
绘图
提供多个y数组,因此可以使用相同的x值绘制多个函数

在第一个绘图中,您将绘制3个函数:

plot([0.1 0.2], [1 0])
plot([0.1 0.2], [1 1])
plot([0.1 0.2], [0 1])
在图中有3个图,但是,你的轴太紧,你看不到它们,因为一个是水平线,另一个是垂直线。如果你写轴([0.3-1.2])你会看到三行。在其他绘图中也会发生同样的情况,即为每个x值绘制3个y值

我建议您停止强制使用绘图的颜色(
'b'
部分告诉绘图以蓝色绘制所有内容),以便您可以清楚地看到有3个绘图

例如,如果你写:

y= [ 1 0 0 ; 0 1 0];
plot(.1:.1:.2,y)
axis([0 0.3 -1 2])
您将看到三个不同颜色的图,每个图如下所示:


不知道,但看起来你根本不知道自己在做什么!我只是一个初学者,正在努力学习绘图的基础知识。