Matlab中的FindPeaks

Matlab中的FindPeaks,matlab,signal-processing,Matlab,Signal Processing,我有一个简单的衍射图,有几个峰,我正试图描述它们 我一直在使用,但我发现它改变了独立域的索引。有没有一种方法可以将这个函数应用于数据,并以自变量的形式输出 pre_norm=p_pre./max(p_pre).*100 findpeaks(pre_norm,'MinPeakProminence',1,'WidthReference','halfheight') [pks,loc,w]=findpeaks(pre_norm,'MinPeakProminence',1,'WidthReference

我有一个简单的衍射图,有几个峰,我正试图描述它们

我一直在使用,但我发现它改变了独立域的索引。有没有一种方法可以将这个函数应用于数据,并以自变量的形式输出

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')
根据,可以使用第二个输入参数指定样本的位置。现在,将返回与峰值对应的位置值,而不是返回作为峰值位置的索引

[peaks, locs] = findpeaks(pre_norm, d_spacing);

这里的自变量是什么
findpeaks
将返回一个索引,然后您可以使用该索引将其索引到自变量中。在本例中,自变量是d间距。我是否可以在findpeaks函数中使用自变量,以便根据自变量自动输出?