Borrar filtros
Borrar filtros

How to find the peaks (both x and y location)

4 visualizaciones (últimos 30 días)
dj
dj el 12 de Oct. de 2014
Comentada: Image Analyst el 13 de Oct. de 2014
Hello.
For instance, if I was plotting Scope (x) and Temperature (y), why can't I use the following code: [pks,locs] = findpeaks(Temperature)?
Matlab tells me that there is the following error: Error using findpeaks>parse_inputs (line 131) Expected a string for the parameter name, instead the input type was 'double'.
Error in findpeaks (line 71) [X,Ph,Pd,Th,Np,Str,infIdx] = parse_inputs(Xin,varargin{:});
It gives me the peaks when I simply use findpeaks(Temperature), but I need the corresponding x values to compute as well.
Could anyone please help me out? Thank you for your time!
  5 comentarios
dj
dj el 13 de Oct. de 2014
This is weird. I just reran the code and it works perfectly. It tells me the locations, but does anyone know how could I find the corresponding Scope values with the given locations?
Image Analyst
Image Analyst el 13 de Oct. de 2014
temps = Temperature(locs);
We can't do much more until you attach your code and data files.

Iniciar sesión para comentar.

Respuesta aceptada

Image Analyst
Image Analyst el 12 de Oct. de 2014
Can you run the example in the help without getting any error:
% Create the sample data
x = linspace(0,1,1000);
Pos = [1 2 3 5 7 8]/10;
Hgt = [4 4 4 2 2 3];
Wdt = [2 6 3 3 4 6]/100;
for n = 1:length(Pos)
Gauss(n,:) = Hgt(n)*exp(-((x - Pos(n))/Wdt(n)).^2);
end
PeakSig = sum(Gauss);
plot(x,Gauss,'--',x,PeakSig)
% Use findpeaks with default settings to find the peaks of the signal and their locations.
[pks,locs] = findpeaks(PeakSig,x)
% Plot the peaks using findpeaks and label them.
findpeaks(PeakSig,x)
text(locs+.02,pks,num2str((1:numel(pks))'))
% Sort the peaks from tallest to shortest.
[psor,lsor] = findpeaks(PeakSig,x,'SortStr','descend');
findpeaks(PeakSig,x)
text(lsor+.02,psor,num2str((1:numel(psor))'))
  1 comentario
dj
dj el 13 de Oct. de 2014
Yes, I can run this fine. Not sure what I'm doing wrong yet ):

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by