How can I plot the FFT from Datapoints
Ältere Kommentare anzeigen
Hi,
I'm collecting data from Excel to Matlab. I meassured with 50Hz, 50 samples, for 1 Second, so I got 50 values of time and voltage. The signal is very noisy and I want to plot the FFT of this signal, but I don´t know how to do this with meassured values.
data=xlsread('filename'); time=data(:,1); voltage=data(:,2);
The point is, I have never made a fft of data points. Can anybody give me an advise or a litte example how to get the plot of the fft please?
Antworten (1)
Damas Limoge
am 16 Mär. 2017
0 Stimmen
This documentation is great, and they have plenty of examples. https://www.mathworks.com/help/matlab/ref/fft.html
3 Kommentare
Damas Limoge
am 16 Mär. 2017
Fs = 50; %Sampling Frequency
T = 1/Fs;
L = 50; %Signal length
Y = fft(voltage);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
f = Fs*(0:(L/2))/L;
plot(f,P1)
Felifa
am 16 Mär. 2017
priya singh
am 13 Mai 2022
As per my knowledge since fft is complex. fft decomposes the signal into amplitude or phase. Above code is trying to plot the single sided amplitude spectrum. we can plot phase spectrum also. double sided spectra is the replica of right side spectrum with redundant information. Hence it is generally considered to obtain one side spectra only.
Kategorien
Mehr zu Fourier Analysis and Filtering finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!