Power spectrum and periodicity
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Kavita Navria
el 31 de En. de 2022
Respondida: Star Strider
el 31 de En. de 2022
I have a data of length 336 (336 days) having a frequency of an event.
- 3
- 1
- 0
- 0
- 2
- so on to 336
how can I plot power spectrum and periodicity of this data?
thank you
0 comentarios
Respuesta aceptada
Star Strider
el 31 de En. de 2022
There are a number of functions in the Spectral Estimation section of the Signal Processing Toolbox documentation that will work.
For a simpler approach, since power is the square of amplitude, do a Fourier transform (fft) on the element-wise square of the original signal:
M = [(1:365).' rand(365,1)]; % Original Data
L = size(M,1);
Ts = M(2,1) - M(1,1); % Sampling Interval
Fs = 1/Ts; % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
s = M(:,2); % Signal Vector
NFFT = 2^nextpow2(L); % For Efficiency
FTs2 = fft(s.^2,NFFT)/L; % Fourier Transform
Fv = linspace(0, 1, NFFT/2+1)*Fn; % Frequency Vector
Iv = 1:numel(Fv); % Inmdex Vector
figure
plot(Fv, abs(FTs2(Iv)))
grid
xlabel('Frequency (Cycles/Day)')
ylabel('Amplitude')
.
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Spectral Measurements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
