一、绘制阶梯图详解
1.1 绘制离散向量的阶梯图
对于离散向量b=[3,7,1,2,3,4,5,6,7],绘制其阶梯图。
代码示例:
b=[3,7,1,2,3,4,5,6,7];
stairs(b);
运行结果:
【说明】:
【1】我们可以看到这里默认的x轴坐标为1-N,这里的N为Y数组的长度;(当然,也可以利用stairs(x,y)更改x轴坐标)
【2】x=1时,y=3;x=2时,y= 7……然后将两者之间按照非垂直即水平的方式连线即得到阶梯图;
1.2 绘制单数据序列
创建在 0 到 4π 区间内的 40 个均匀分布的值处计算的正弦阶梯图。
代码示例:
X = linspace(0,4*pi,40);
Y = sin(X);
figure
stairs(Y)
运行结果:
1.3 绘制多个数据序列
创建在 0 到 4π 区间内的 50 个均匀分布的值处计算的两个余弦函数阶梯图。
代码示例:
X = linspace(0,4*pi,50)';
Y = [0.5*cos(X), 2*cos(X)];
figure
stairs(Y)
运行结果:
二、利用所绘制的阶梯图获取其横纵坐标值
获取阶梯图的横纵坐标值主要用到如下语法:
[xb,yb] = stairs(y)
该语句不创建绘图,但返回大小相等的矩阵 xb 和 yb,以使 plot(xb,yb) 绘制阶梯图。
该语句在日常生活中经常用到,比如已经获得了一段数据及图像,想要获取其阶梯化数据然后应用到其他图像上,则需要用到该函数。
【例】:已知函数f,将该函数进行离散化并获取其横纵坐标值
代码如下:
a=725;b=1.401;c=0.009406;
x1=6.7:0.1:8.4;
f= a*exp(-b*x1)+c;
[xb,yb]=stairs(x1,f);
运行这段代码之后,就可以在工作区的xb和yb中找到其横纵坐标值了,十分有用。
当然如果想要再绘制阶梯图,可以直接调用plot函数:
plot(xb,yb)
运行结果如下:
三、总结(stairs用法)
- stairs(Y) 绘制 Y 中元素的阶梯图;
如果 Y 为向量,则 stairs 绘制一个线条;如果 Y 为矩阵,则 stairs 为每个矩阵列绘制一个线条。
- stairs(X,Y) 在 Y 中由 X 指定的位置绘制元素;
输入 X 和 Y 必须是相同大小的向量或矩阵。另外,X 可以是行或列向量,Y 必须是包含 length(X) 行的矩阵。
- [xb,yb] = stairs(___) 不创建绘图,但返回大小相等的矩阵 xb 和 yb可以使用 plot(xb,yb) 绘制阶梯图;
ok,以上便是阶梯图stairs的全部内容了,如果对你有所帮助,记得点个赞哟~
参考:https://ww2.mathworks.cn/help/matlab/ref/stairs.html?searchHighlight=stairs&s_tid=srchtitle