我有以下功能:
f(t) = 0 if t < 0
f(t) = 2*t^2 - 4*t +3 if 1 <= t < 2
f(t) = Cos(t) if 2 <= t
我是一名新的MATLAB用户,我不知道如何在0&lt; = t&lt; = 5的范围内在单个数字上绘制函数。
关于我必须做什么的任何想法?
答案 0 :(得分:5)
为您的拉普拉斯公式写一个function。
像这样的东西
function [ft] = func(t)
if t <= 0
ft = 0;
elseif t > 0 && t < 2
ft = 2 * t^2 - 4 * t + 3;
elseif t >= 2
ft = cos(t);
end
然后,您可以使用fplot绘制函数,第二个参数定义绘图范围。
fplot('func', [0, 5])
答案 1 :(得分:1)
感谢您的帮助,但我无法实现任何代码或命令来获得答案。而不是,我很幸运,我找到了一个例子,MATLAB命令如下:
x=linspace(0,5,3000);
y=(0*x).*(x<1) + (2*(x.^2)-(4.*x)+3).*((1<=x) & (x<2))
+ (cos(x)).*(2<=x);
plot(x,y, '.'), grid
axis([0 5 -2 4])
title ('Plot of f(t)'), xlabel('t'), ylabel('f(t)')
答案 2 :(得分:0)
如果您的意思是限制x轴,那么在使用绘图后
xlim([xmin xmax])
在你的情况下
xlim([0 5])
使用ylim
限制y轴
好的,我想我误解了你
我想,你在公式中犯了错误
f(t)= 0如果0 <= t <0。 1 f(t)= 2 * t ^ 2 - 4 * t + 3如果1 <= t <3。 2 f(t)= Cos(t),如果2 <= t
figure;
hold on;
x = 0:0.1:0.9; y = 0 * x; plot( x, y );
x = 1:0.1:1.9; y = 2 * x * x - 4 * x + 3; plot( x, y );
x = 2:0.1:5; y = cos( x ); plot( x, y );