【发布时间】:2014-05-16 06:17:17
【问题描述】:
所以我有一个创建一系列方形脉冲的 Matlab 函数,然后我在它们上应用噪声和一个滤波器,问题是我需要将脉冲的形式更改为三角形:
x = zeros(1,1000)
x(100:200) = 1
x(400:500) = 1
x(700:800) = 1
plot(x)
【问题讨论】:
标签: matlab plot waveform triangular
所以我有一个创建一系列方形脉冲的 Matlab 函数,然后我在它们上应用噪声和一个滤波器,问题是我需要将脉冲的形式更改为三角形:
x = zeros(1,1000)
x(100:200) = 1
x(400:500) = 1
x(700:800) = 1
plot(x)
【问题讨论】:
标签: matlab plot waveform triangular
尝试定义一个创建三角波的函数,然后使用它(或每次手动定义)。这样的事情应该可以正常工作:
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);
但是,我鼓励您更改问题的名称,这实际上是关于要绘制什么而不是您应该使用哪个绘图功能。
【讨论】: