如果我有一个定义为
的函数f(x)f(x) = x^2; x>0 & x<=1
= x^3; x>1 & x<2
= 2*x; elsewhere
如何在同一图表中在Matlab中绘制这个?
答案 0 :(得分:2)
您可以定义一组x
值(例如4 <= x <= 4
之间),然后将2*x
应用于此时间间隔内的每个值。之后,搜索其他函数区间内的x
个值,并将这些值设置为这些区间内的值。因此,尝试这样的事情:
x = -4 : 0.001 : 4;
y = 2*x;
y(x > 0 & x <= 1) = x(x > 0 & x <= 1).^2;
y(x > 1 & x < 2) = x(x > 1 & x < 2).^3;
plot(x,y);
grid;
这就是我得到的:
答案 1 :(得分:2)
我会在没有fplot
的情况下执行此操作:
x = 0:0.1:3;
x1 = x(x>0 & x<=1);
x2 = x(x>1 & x<2);
x3 = x(x>2);
y1 = (x1).^2;
y2 = (x2).^3;
y3 = 2*(x3);
plot([x1 x2 x3], [y1 y2 y3])