我正在使用此代码绘制单位步骤函数
t1=-2:0.01:2;
if t1>=0
y=1;
else if t1<0
y=0;
end
end
subplot(3,1,1)
plot(t1,y)`
但我没有得到所需的输出。它在每个点都为y绘制零点。
答案 0 :(得分:3)
您的代码一次测试所有t1值,与
相同if all(t1>=0)
y=1;
else if all(t1<0)
y=0;
end
end
你想要的是:
t1=-2:0.01:2;
y = zeros(size(t1));
y(t1>=0) = 1;
subplot(3,1,1)
plot(t1,y)
另一种(效率较低)的方法是:
t1=-2:0.01:2;
for index=1:length(t1)
if t1(index)>=0
y(index)=1;
else if t1(index)<0
y(index)=0;
end
end
end
subplot(3,1,1)
plot(t1,y)
如P0W所示,还有一个重载功能可以生成与您类似的步进输出(尽管值为0.5为0)。但是,只有安装了符号工具箱,才能使用重质功能。