楼主: 无间临池
16890 5

[问答] 分段函数matlab画图求教啊! [推广有奖]

  • 0关注
  • 0粉丝

博士生

72%

还不是VIP/贵宾

-

威望
0
论坛币
11399 个
通用积分
2.1400
学术水平
1 点
热心指数
0 点
信用等级
0 点
经验
2360 点
帖子
125
精华
0
在线时间
406 小时
注册时间
2006-8-13
最后登录
2024-2-24

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

我想用matlab对分段函数进行画图啊,分段函数如下

当x属于[0,0.3]时,y=7.2,当x属于(0.3,1]时,y=4x+6

各位同学帮帮忙啊,这样的分段函数画图命令是什么啊?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:matlab画图 MATLAB matla atlab 分段函数 MATLAB 函数 求教 画图 分段

已有 1 人评分学术水平 收起 理由
njtdf + 1 观点有启发

总评分: 学术水平 + 1   查看全部评分

沙发
kaifeng007 发表于 2008-4-15 17:15:00 |只看作者 |坛友微信交流群

clc;clear
x1=0:0.001:0.3;
x2=0.3:0.001:1;
y1=7.2*ones(1,length(x1));
y2=4*x2+6;
x=[x1,x2];
y=[y1,y2];
plot(x,y)


[此贴子已经被作者于2008-4-15 17:16:33编辑过]

使用道具

藤椅
necaznzrsn 发表于 2008-4-15 21:22:00 |只看作者 |坛友微信交流群

x=0:0.01:0.3;plot(x,0*x+7.2,'-');

hold on;

x=0.3:0.01:1;plot(x,4*x+6,'-')

使用道具

板凳
无间临池 发表于 2008-4-16 16:21:00 |只看作者 |坛友微信交流群

谢谢楼上的两位老兄啊,能上网就是好啊!

使用道具

报纸
lwqlllll 发表于 2013-12-20 22:34:30 |只看作者 |坛友微信交流群
可以用if else end~

使用道具

地板
matlab-007 发表于 2015-2-14 21:21:52 |只看作者 |坛友微信交流群
关于matlab分段函数如何绘图问题
例1
1、不分段的我会,如z=x^2+y^2
t=-5:0.5:5;[x,y]=meshgrid(t);z=x.^2+y.^2;mesh(x,y,z)
2、分段的
比如:-5<x<0时,z=x^2+y^3
      0<x<5时,z=x^2+y^2怎么画?
如下:
%下面是MATLAB运行代码
%by dynamic
%see also http://www.matlabsky.com
%2009.2.1
t=-5:0.1:5;[x,y]=meshgrid(t);
z=(x.^2+y.^3).*(x<0&x>-5)+(x.^2+y.^2).*(x>0&x<5);
mesh(x,y,z)
例2
0<t<1 u(t)=0
其他时候u(t)=1
这个用matlab语言怎么定义函数u
如下:
function myfun(t) if 0<t && t<1 u=0 else u=1 end 输入myfun(8),可以得到结果
例3
比如说y=5/cos(x),我想绘制此曲线.但是x的定义域中不能包括1/2*pi和3/2*pi,怎样才能定义x,可以在除x=1/2*pi和3/2*pi以外绘制区间为[0,2*pi]的曲线. 谢谢各位厉害的大虾帮忙. 尽量写得详细一些.
如下:
>> x=0:.001:2*pi; >> c=.1; >> y=5./cos(x); >> y(abs(x-pi/2)<c | abs(x-3*pi/2)<c)=NaN; >> plot(x,y);
例4 比较经典的一个分段函数绘图例子
x=-3:0.01:3;
y1=zeros(size(x));
y2=zeros(size(x));
y3=zeros(size(x));
N=length(x);
for k=1:N
if x(k)<-1&x(k)>=-3;
y1(k)=(-x(k).^2-4*x(k)-3)/2;
elseif x(k)>=-1&x(k)<1 ;
y2(k)=-x(k).^2+1;
else x(k)<=3&x(k)>=1 ;
y3(k)=(-x(k).^2+4*x(k)-3)/2;
end
end
y=y1+y2+y3;
plot(x,y)

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 05:46