找回密码
 注册
Simdroid-非首页
查看: 135|回复: 0

【总结】分段函数画图/绘图/绘制的简单方法

[复制链接]
发表于 2009-12-2 14:34:12 | 显示全部楼层 |阅读模式 来自 浙江杭州
本帖最后由 messenger 于 2009-12-2 22:16 编辑


分段函数画图是大家经常遇到的问题。Matlab绘制分段函数有很多种方法,一直不知道哪种方法绘图比较好,下面对这些方法的优缺点进行总结,大家可以根据自己的偏好来选择所用方法。

例题:x=[0,100]时,y=2x;x=[100,200],y=3x。

方法一:

用plot命令的多参数形式直接绘图。个人认为这种方法最为简单。这种方法有一个特点,即两段曲线之间的部分不会连上。

  1. x1=0:100;
  2. y1=2*x1;
  3. x2=100:200;
  4. y2=3*x2;
  5. plot(x1,y1,x2,y2);
复制代码

方法二:

将数据合并为一个数组,用plot命令的双参数形式绘图。这种方法比上一种方法命令稍多一些,但因为这种方法只是对数据进行处理,所以对绘图命令没有影响。因此这种方法将plot命令换成line命令也可以。但第一种方法无法用line命令,因为line命令没有多参数形式。这种方法绘图时,两段曲线之间的部分会连上。

  1. x1=0:100;
  2. y1=2*x1;
  3. x2=100:200;
  4. y2=3*x2;
  5. x=[x1 x2];
  6. y=[y1 y2];
  7. plot(x,y);
复制代码

方法三:

采用关系表达式,在一个函数中表示函数分段。这种方法虽然比上两种方法的命令都少,但不直观。不过这种表式形式在分段函数的其他运算中也可以用。这种方法与第二种方法一样,两段曲线之间的部分会连上。

  1. x=0:200;
  2. y=2.*x.*(x<=100)+3.*x.*(x>100&x<=200);
  3. plot(x,y);
复制代码

其他方法:

还有一些其他方法,比如用hold on命令将分段函数图分两次绘制,或用if then判断语句将函数分别绘制,不过觉得这些方法都比较麻烦。


参考链接:

【讨论】请问matlab中分段函数的图象怎么画?
如何画分段函数的图像
请问一下怎么用MATLAB画分段函数的图?
画分段函数的曲线


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-5-19 15:58 , Processed in 0.034271 second(s), 18 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表