plot画分段函数_Matlab分段函数图像画法的几点注记
摘要:本文指出《Matlab教程及实训》中关于分段函数画法的不妥,给出Matlab分段函数的最常用的几种画法。
关键词: Matlab 分段函数
Matalb是三大数学软件之一,有强大的计算功能,图形处理功能,仿真功能,因此学好Matlab可以使我们事半功倍。我们在处理实际问题中经常遇到需要画函数图像,尤其分段函数,有时候会感到茫然,如何利用Matlab画分段函数的图像?
我们都知道,画图也就是描点,描的点越多,画出的图像越光滑。二维空间画图是描平面上的点,三维空间画图是描空间中的点。
《Matlab教程及实训》这本书中,关于分段函数画图的程序本人认为有点不妥。现分析如下:
例5-1根据函数绘制一条曲线,使用if结构将曲线分成三段,绘制的曲线如图5-1所示,函数为
程序如下: x=-5:0.1:5;
>> if x>=1
y=x.^2-1
elseif -1
y=0*x
else
y=-x.^2-1
end
plot(x,y)
很明显,程序本身不仅存在输入错误,还存在逻辑错误,我们从分段函数的表达式看,可以推测出该函数的图像不应该是一条抛物线,而是由两条抛物线和一段线段组成。我们来分析一下深层次的原因:①第一个if语句的条件判断x>=1,也就是x行向量里面的所有的元素全部大于或者等于1,条件的逻辑判断才会真,否则为假。②elseif的条件-1
我们简单归纳一下,分段函数的几种常见的画法这里以例5-1为例:
利用逻辑变量来画图
clear
x=-5:0.1:5;
y=(x>1).*(x.^2-1)+((-1
plot(x,y)
利用find函数找非零元素
clear
x=-5:0.1:5;
y=zeros(size(x));%预处理可加快运算速度
k1=find(x>=1);%k1返回符合x>=1的数组编址(单下标)
y(k1)=x(k1).^2-1;
k2=find(-1
y(k2)=0;
k3=find(x<=-1);%k3返回符合x=
y(k3)=- x(k3).^2+1;
plot(x,y)
各个函数拼接在一起
clear
x1=-5:0.1:-1;y1=-x1.^2+1;plot(x1,y1);hold on
x2=-1:0.1: 1;y2=0.*x2;plot(x2,y2);hold on
x3=1:0.1:5;y3=x3.^2-1; plot(x3,y3)
我们还可以使用for循环+if语句或者利用while循环+if语句,我就不再一一列举了,利用上述五种方法,都能得到上述正确的函数图像。
Matlab中分段函数画法也多种多样没有必要全部掌握,掌握常见的几种方法就可以顺利的画分段函数图像。
参考文献
[1] 曹弋.Matlab 教程及实训[M].北京:机械工业出版社,2005.
plot画分段函数_Matlab分段函数图像画法的几点注记相关推荐
- matlab的tfdata函数_MATLAB 主要函数指令表(按功能分类)
15句柄图形(Handle Graphics) 15.1图形窗的产生和控制(Figure window creation and control) clf 清除当前图 close 关闭图形 figur ...
- matlab中ss函数_matlab ss函数 tf函数
matlabss 函数 tf 函数 ss 指定状态空间模型或者将线性时不变系统转成状态空间语法 ss sys = ss(a,b,c,d) sys = ss(a,b,c,d,Ts) sys = ss(d ...
- matlab中的mkdir函数_matlab所有函数集合
matlab所有函数集合 更新时间:2017-2-10 14:33:00 浏览量:568 手机版 一.常用命令 1.常用命令-->管理命令和函数 addpath 添加目录到MATLAB 搜索 ...
- matlab中ss函数_matlab ss函数 tf函数
ss 指定状态空间模型或者将线性时不变系统转成状态空间 语法 ss sys = ss(a,b,c,d) sys = ss(a,b,c,d,Ts) sys = ss(d) sys = ss(a,b,c, ...
- sgolayfilt函数_MATLAB常用函数
数字信号处理与MA TLAB 实现 1. n1=[ns:nf]: x1=[zeros(1,n0-ns),1,zeros (1,nf-n0)]: %单位抽样序列的产生 2. subplot(2,2,4) ...
- matlab里toimage函数_MATLAB图像处理函数大全
Import, Export, and Conversion Read and Write Image Data from Files imread Read image from graphics ...
- plot画分段函数_python画图函数大全
很多时候,我们需要用python画图,这样就可以更加直观的看到数据的走势,而不是干巴巴的数字. 今天,我们就给大家整理了一下python画图的常用函数,由于篇幅限制.无法将这些函数的使用方法全部表现出 ...
- python使用matplotlib可视化线图(line plot)、使用arrow函数在matplotlib可视化图像中添加箭头(drawing arrows in matplotlib)
python使用matplotlib可视化线图(line plot).使用arrow函数在matplotlib可视化图像中添加箭头(drawing arrows in matplotlib) 目录
- R语言使用plot函数和lines函数可视化线图(line plot)时、图之间的主要区别是由选项type产生的、type参数常用参数说明、不同type生成的可视化图像对比
R语言使用plot函数和lines函数可视化线图(line plot)时.图之间的主要区别是由选项type产生的.type参数常用参数说明.不同type生成的可视化图像对比 目录
最新文章
- 《Android应用开发攻略》——1.3 从命令行创建 “Hello, World”应用程序
- 滴答定时器的计数模式_SysTick(系统滴答定时器)
- mysql改为sql_项目需求变更:Mysql改为SqlServer
- 题解 T28305 【yizimi的旅游景点】
- 哈佛第二、哥大第三,第一还是它!2020USNews美国大学排名发布!
- oracle 表改表空间,Oracle批量修改用户表table的表空间
- jQuery Mobile中按钮<a>或<button>添加class样式ui-btn-*
- fw150um2.0linux驱动下载,fw150um无线网卡驱动
- python实现自动化不停打电话
- 怀旧在2022:游戏ROM下载+游戏模拟器推荐(安卓/iOS)
- 学习Java开源框架前你应该了解的
- EC6110M/T-Q21A/C/E-EC6108V9/V9C/V9U/V9A/V9E/V9I/V92/V97-V9C悦me/CA全系列包
- 怎样检测人脸相似度(人脸识别技术)
- arduino uno连接超声波传感器测距
- Java面试笔试题大汇总一(最全+详细答案)
- 李银河博士,作个幸福的犬儒吧
- mysql视图出问题如何解决_MySQL视图
- U3D DotH教程
- 免费智能机器人聊天API
- elementUI分页删除最后一页数据时跳转回上一页并且el-table序号递增