在Matlab中查找FindPeaks

时间:2016-04-09 18:21:21

标签: matlab signal-processing

我有一个简单的衍射图案,有几个峰,我试图表征。

我一直在使用findpeaks function,但我发现它会更改独立域名的索引。有没有办法将此函数应用于数据并根据我的自变量输出?

pre_norm=p_pre./max(p_pre).*100
findpeaks(pre_norm,'MinPeakProminence',1,'WidthReference','halfheight')
[pks,loc,w]=findpeaks(pre_norm,'MinPeakProminence',1,'WidthReference','halfheight')

1 个答案:

答案 0 :(得分:0)

根据findpeaks documentation,您可以使用第二个输入参数指定样本的位置。现在,不是将索引作为峰值的位置返回,而是返回与峰值对应的位置值。

1.0531436913408342e-7.toExponential(4) // returns 1.0531e-7
-5.265718456704172e-7.toExponential(4) // returns -5.2657e-7
8.425149530726674e7.toExponential(4) // returns 8.4251e+7