This question already has an answer here:

Plotting the FFT of a signal with Matlab e.g. by the code:

y_fft = abs(fft(y));
f = fs*(0:length(y)-1)/length(y);

where y is the discrete signal and 'fs' is sample rate. creates a plot where the curve can be mirrored in the middle of the x-axis e.g. enter image description here

Why can the FFT always be mirrored in the middle of the x axis?


marked as duplicate by Jim Clay, Peter K., sansuiso, Jason R, endolith Apr 12 '13 at 0:02

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • $\begingroup$ That's right only for FFT of real signal: because its imagine part is absent, FFT have double redundancy. $\endgroup$ – Eddy_Em Apr 9 '13 at 14:05

The DFT of a real signal is conjugate symmetric. For example, if your DFT result at, say, 2Hz was $1+j5$, then your DFT result at -2Hz would be $1-j5$. This is conjugate symmetry.

Of course, when you take the absolute magnitude, the result in both cases is the same, which is why you see this mirror image.

Going deeper, the reason for why a real signal can be decomposed into symmetric complex conjugate parts, is because a real signal oscillates on the real axis, and this can be thought of as the resultant of two phasors rotating around the center of the complex plane, in opposite directions.

Hope that helped.


Not the answer you're looking for? Browse other questions tagged or ask your own question.