How to take frequency samples and time interval to plot fft in MATLAB?

2 次查看(过去 30 天)
Hello,
i have a vector containing 2048 data(ASCII file) in this manner like [87 92 80 45 .... ]. I want to plot fft of this data. So I just want to know how to take frequency sample and time interval to plot fft of this data? I wrote the following code to calculate fft of this code. Please suggest whether the frequency sample and time interval is right or wrong? or suggest the code to calculate fft of this data.
I = load('data1.asc');
for i = 1:2048
x = I(:,2);
end
plot(x)
*Fs = 40000; * Frequency Samples
*T = 1/Fs; * Time
L = 2000;
NFFT = 2^nextpow2(L);
Y = abs(fft(x,NFFT))/L;
f = Fs/2*linspace(0,1,NFFT/2+1);
figure, plot(f,2*abs(Y(1:NFFT/2+1)))
axis([0 40000 0 40])
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Spectral Measurements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by