Olumlu bir frekans spektrumu oldukça basit bir şekilde yapabilirsiniz ( fs
örnekleme oranı ve NFFT
fft kutularının sayısı nerede ). FFT algoritmasının Matlab uygulamasında, ilk eleman her zaman DC bileşenidir, bu nedenle dizi neden sıfırdan başlar. Bu NFFT'nin tek ve çift değerleri için geçerlidir.
%//Calculate frequency axis
df = fs/NFFT;
fAxis = 0:df:(fs-df);
Frekans spektrumunu sarmanız gerekiyorsa, tek numaralı NFFT'niz olup olmadığını dikkate almanız gerekir. Her zaman bir DC bileşeni olması gerekir . .
df = fs/NFFT;
fAxis = (0:df:(fs-df)) - (fs-mod(NFFT,2)*df)/2;
Pozitif frekans ekseninin hesaplamasının yukarıyla nasıl aynı olduğuna dikkat edin, ancak FFT-kaydırılan terim, çift veya tek FFT uzunluklarını karşılamak için değişir.
Bu kod parçacıkları burada bulunan SO'da (ilginç bulabileceğiniz) uzun bir cevaptan alınmıştır:
/programming/9694297/matlab-fft-xaxis-limits-messing-up-and-fftshift/ 9699983 # 9699983