如何使findpeak函数检测负峰而不是正峰

时间:2014-11-10 04:19:36

标签: arrays matlab

我想知道如何让findpeak功能检测负峰而不是正峰,它会检测下图所示的红色峰值,我需要检测蓝色峰值..任何想法?? < / p>

非常感谢。

enter image description here

1 个答案:

答案 0 :(得分:4)

如上所述,您必须使用-data

但是,我提供了一个例子,

x = 0 : 1e-3 : 5*pi;
t = (0 : length(x)-1)*1e-3;
y = sin(x);
[p l] = findpeaks(y);
plot(t,y);hold on
plot(t(l),p,'ko','MarkerFaceColor','g');
[pn ln] = findpeaks(-y);
plot(t(ln),-pn,'ko','MarkerFaceColor','r');

给出,

enter image description here