
How to plot properly a 2d fft of data?
    21 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
Hi!
Ive generated a wave in a numerical model using a chirp signal and collected the responses of the model in chosen points. How can I plot properly the 2d fft of this data. The responses are in attached mat.
Here is the chirp signal: 
t2=0:dt:(2e-4)-dt;
signal2 = chirp(t2,0,9.99900000000000e-05,1e6,'linear');
Is the attached image correct?
thanks in advance
0 Commenti
Risposta accettata
  Star Strider
      
      
 il 4 Gen 2020
        Not entirely.  The posted image is the plot of the two-sided Fourier transform after using the fftshift function.  The result is that the frequency axis is not correct.  (Note that a 2D fft (fft2) is usually applied to images and similarly-constructed matrices.  The 1D fft is correct here.)  
Try this: 
D = load('matlab.mat');
mat = D.mat;
t = 0:numel(mat)-1;                                         % Time Vector (Units: Time Units)
Ts = mean(diff(t));                                         % Sampling Time Interval
Fs = 1/Ts;                                                  % Sampling Frequency
Fn = Fs/2;                                                  % Nyquist Frequency
L = numel(t);                                               % Signal Length
FTmat = fft(mat)/L;                                         % Fourier Transform
Fv1 = linspace(0, 1, fix(L/2)+1)*Fn;                       % Frequency Vector - One-Sided Fourier Transform (Units: Cycles/Time Unit)
Iv = 1:numel(Fv1);                                           % Index Vector
figure
plot(Fv1, abs(FTmat(Iv))*2)
grid
title('One-sided Fourier Transform')
xlabel('Frequency')
ylabel('Amplitude')
Fv2 = linspace(-Fn, +Fn, L);                               % Frequency Vector - Two-Sided Fourier Transform (Units: Cycles/Time Unit)
figure
plot(Fv2, fftshift(abs(FTmat)))
grid
title('Two-Sided Fourier Transform')
xlabel('Frequency')
ylabel('Amplitude')
producing: 

6 Commenti
Più risposte (0)
Vedere anche
Categorie
				Scopri di più su Fourier Analysis and Filtering in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!