I have a program , a part of which is shown below:
X=x(:,1); %assigning X, all the values of x of length n.
Y = fft(X,n); % calculating the fast fourier transform of X.
T=fft(t,n); %calculating the fast fourier transform of time.
After the execution of the program, I get the spectral plot, but a warning too: Warning: Imaginary parts of complex X and/or Y arguments ignored.
This means imaginary parts has been excluded. I am keen interested in, if I am be able to get the plot which will involve both real and imaginary parts. I will be much thankful, if anyone take interst to clear my problem.
No products are associated with this question.
That is because you want to plot only the magnitude of the DFT coefficients, or the magnitudes squared
I have no idea why you are taking the Fourier transform of your time vector, that is not the frequency vector.
You need to create a meaningful frequency vector by knowing the number of points and the sampling frequency (interval)
t = 0:0.001:1-0.001; %sampling interval is 0.001 Fs = 1000; x = cos(2*pi*100*t)+randn(size(t)); xdft = fft(x); freq = 0:Fs/length(x):Fs/2; xdft = xdft(1:length(x)/2+1); plot(freq,20*log10(abs(xdft)))
Of course in the DFT coefficients, you certainly have the imaginary parts.
Play games and win prizes!Learn more