how to calculate and plot power spectral density of a given signal
    20 views (last 30 days)
  
       Show older comments
    
I have signal and i want to plot it's power spectral density , What should i do? is it right if i first calculate the FFT of a signal and then get the square abs of it's value?
1 Comment
  Rahul Gulia
 on 3 Jan 2023
				Yes, I agree. We need to take the FFT to get its frequency components and then generate its absolute value plot to learn about its PSD. 
Accepted Answer
  Wayne King
    
      
 on 5 Feb 2014
        
      Edited: Wayne King
    
      
 on 5 Feb 2014
  
      If you have the Signal Processing Toolbox, it is easiest to use periodogram().
That handles all the scaling for you.
   Fs = 1000;
    t = 0:1/Fs:1-1/Fs;
    x = cos(2*pi*100*t)+randn(size(t));
    [Pxx,F] = periodogram(x,[],length(x),Fs);
    plot(F,10*log10(Pxx))
If you do not have the Signal Processing Toolbox, the PSD is proportional to the absolute value squared of the DFT (calculated by fft())
For more information on that scaling, please see:
0 Comments
More Answers (0)
See Also
Categories
				Find more on Parametric Spectral Estimation in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

