FFT: Amplitude 3D Spectrum of a time series

5 次查看(过去 30 天)
I have a synchronously sampled time series. I wish to plot the 3D spectra of the time series (time (seconds), frequency (Hz), amplitude (dB)).
Does matlab have a built in tool for this? I cant see how to get it out of periodogram etc.
thank you
T = 1000;
t = 1: T;
ts = randn(T,1);
Fs = 50; %the sampling frequency.
Ns = 10; %the frequency resolution.
xa=[0 Fs];
%I want to find the amplitude.
amp = ?? %amp is a matrix size (Ns x T)
imagesc(t,xa,(20*log10(amp)));
title('\bf Time series Spectrum');
xlabel('\bf Time');
ylabel('\bf Frequency (Hz)');
colorbar; %the color is the amplitude (in dB)

采纳的回答

Honglei Chen
Honglei Chen 2013-6-27
You should be able to use spectrogram for this.

更多回答(0 个)

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by