繁体   English   中英

Matlab:如何绘制三角波

[英]Matlab: how to plot a triangular wave

所以我有一个Matlab函数,该函数创建一系列方形脉冲,然后在它们和滤波器上施加噪声,问题是我需要将脉冲的形式更改为三角形式:

x = zeros(1,1000)
x(100:200) = 1
x(400:500) = 1
x(700:800) = 1
plot(x)

尝试定义一个函数,该函数创建一个三角波,然后使用它(或每次手动定义它)。 这样的事情应该可以正常工作:

x = zeros(1,1000);
tri = @(x) [(0:(floor(x/2)-1))/floor(x/2),1,((floor(x/2)-1):-1:0)/floor(x/2)];
x(100:200) = tri(101);
x(400:500) = tri(101);
x(700:800) = tri(101);
plot(x)

如果这不是您要的,例如,如果您要锯齿波,则应检查sawtooth功能,请尝试:

x = 0:0.1:15;
y=sawtooth(x,0.5);
plot(x,y);

但是,我鼓励您更改问题的名称,这实际上是关于要绘制的内容,而不是您应该使用的绘图功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM