数学建模社区-数学中国

标题: 利用MATLAB绘制阶梯图(stairs函数)并获取所绘制的阶梯图的横纵坐标值 [打印本页]

作者: 杨利霞    时间: 2021-7-23 15:03
标题: 利用MATLAB绘制阶梯图(stairs函数)并获取所绘制的阶梯图的横纵坐标值

利用MATLAB绘制阶梯图(stairs函数)并获取所绘制的阶梯图的横纵坐标值
订阅专栏
目录
一、绘制阶梯图详解
1.1 绘制离散向量的阶梯图
1.2 绘制单数据序列
1.3 绘制多个数据序列
二、利用所绘制的阶梯图获取其横纵坐标值
三、总结(stairs用法)
一、绘制阶梯图详解
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
2
运行结果:


【说明】:
【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
2
3
4
5
运行结果:




1.3 绘制多个数据序列
创建在 0 到 4π 区间内的 50 个均匀分布的值处计算的两个余弦函数阶梯图。
代码示例:


X = linspace(0,4*pi,50)';
Y = [0.5*cos(X), 2*cos(X)];


figure
stairs(Y)
1
2
3
4
5
运行结果:




二、利用所绘制的阶梯图获取其横纵坐标值
获取阶梯图的横纵坐标值主要用到如下语法:


[xb,yb] = stairs(y)
1
该语句不创建绘图,但返回大小相等的矩阵 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);
1
2
3
4
运行这段代码之后,就可以在工作区的xb和yb中找到其横纵坐标值了,十分有用。




当然如果想要再绘制阶梯图,可以直接调用plot函数:


plot(xb,yb)
1
运行结果如下:




三、总结(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
————————————————
版权声明:本文为CSDN博主「wendy_ya」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/didi_ya/article/details/119005983







欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5