Borrar filtros
Borrar filtros

FFT \ Peak points

6 visualizaciones (últimos 30 días)
LALE ASIK
LALE ASIK el 9 de Mzo. de 2018
Editada: LALE ASIK el 7 de Abr. de 2018
I am trying to find peak points of Fast Fourier transform (FFT). The graph looks like this:
Could you please help me to fix it?
% amplitude peaks
pks= findpeaks(mx(1:nfft/2));
n=min(n,length(pks));
pks_sort=sort(pks,'descend');%vector of spikes
for k = 1:n
locs=find(mx(1:nfft/2)==pks_sort(k));
f(k)=f_Axis(locs);
end

Respuesta aceptada

Akira Agata
Akira Agata el 9 de Mzo. de 2018
Please change the 'amplitude peaks' section of your code to the following:
% amplitude peaks
[pks,locs] = findpeaks(mx(1:nfft/2),'SortStr','descend');
n = min(n,length(pks));
subplot(2,1,2);
plot(f_fft,mx)
hold on
plot(f_fft(locs(1:n)),pks(1:n),'rv','MarkerFaceColor','r')
xlabel('Frequency ')
ylabel(' Amplitutde')
  1 comentario
LALE ASIK
LALE ASIK el 9 de Mzo. de 2018
Thank you so much for your help.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by