findpeaks() neglecting the high amplitude peaks.Does not work as exptected
1 回表示 (過去 30 日間)
古いコメントを表示
preeti visweswaran
2017 年 4 月 18 日
コメント済み: preeti visweswaran
2017 年 4 月 19 日
I am attaching herewith the data i am working with. Findpeaks() is not detecting the highest amplitude peaks. Attached is the data I am working with. Following is the code:
file = 'forRef_2.xls';
col = xlsread(file,'J:J');
peaks=findpeaks(col);
[pks,locs] = findpeaks(col);
%both on same plot
figure
plot(col,'r')
hold on
plot(locs,pks,'pg', 'MarkerFaceColor','b')
legend('original','peaks')
4 件のコメント
Andrew Newell
2017 年 4 月 18 日
And do you use exactly the code you have provided above? Or do you select one of the columns in col?
採用された回答
Andrew Newell
2017 年 4 月 18 日
When I try this code, I get 7 plots, and figure 7 looks like your figure except that all the peaks are correctly identified:
file = 'forRef_2.xls';
col = xlsread(file,'J:J');
for ii=1:size(col,2)
peaks=findpeaks(col(:,ii));
[pks,locs] = findpeaks(col(:,ii));
%both on same plot
figure
plot(col(:,ii),'r')
hold on
plot(locs,pks,'pg', 'MarkerFaceColor','b')
legend('original','peaks')
end
11 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!