findpeaks() neglecting the high amplitude peaks.Does not work as exptected
    1 Ansicht (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    preeti visweswaran
 am 18 Apr. 2017
  
    
    
    
    
    Kommentiert: preeti visweswaran
 am 19 Apr. 2017
            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 Kommentare
  Andrew Newell
      
 am 18 Apr. 2017
				And do you use exactly the code you have provided above? Or do you select one of the columns in col?
Akzeptierte Antwort
  Andrew Newell
      
 am 18 Apr. 2017
        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 Kommentare
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


