Comment puis-je tracer les résultats de la spectrogramme de la fonction?
Dans ma figure, j'ai 2 axes, le premier est la série temporelle du signal et le deuxième est le ifft
du signal. Je voudrais ajouter un 3ème axes qui contient le spectrogramme du signal. Comment puis-je faire cela?
% Create the raw signal
fs = 40;
t = 0:( 1/fs ):4;
y1 = [ sin( 2*pi*5*t( t<=2 ) ), sin( 2*pi*10*t( t>2 ) ) ];
% Compute the ifft of the signal
Fy1 = abs(ifft(y1));
N = numel(t);
idx = 1:numel(Fy1) / 2;
f = fs*(0:(N-1)) / N;
% Plot the raw signal as a time series
subplot(311);
plot(t,y1,'k');
xlabel('Time (s)');
ylabel('Amplitude');
% Plot the spectrum of the signal
subplot(312);
plot(f(idx),2*Fy1(idx),'k')
xlabel('Frequency (cycles/second)');
ylabel('Amplitude');
J'ai essayé d'utiliser le spectrogram
fonction cependant, je vais avoir du mal à interpréter ces résultats comme une figure. Comment puis-je calculer le spectrogramme de sorte que j'ai le temps de courir le long de la xaxis et l'amplitude le long de l'axe?
OriginalL'auteur KatyB | 2012-12-13
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin de fournir plus d'arguments d'entrée en
spectrogram
. La forme de la fonction vous avez besoin est:Voir http://www.mathworks.com/help/signal/ref/spectrogram.html documentation complète, mais essentiellement, vous avez besoin de définir:
windows
: le nombre d'échantillons à utiliser pour chaque estimation spectrale calculnoverlap
: combien d'échantillons à inclure dans le calcul du spectre de N-1 dans le spectre NF
: les fréquences que vous souhaitez que le spectre évalué àfs
: la fréquence d'échantillonnage du signal.Puis tracer le spectrogramme avec:
Note: Le qualité et intelligibilité d'un spectrogramme dépend de l'utilisation du bon d'entrées dans le
spectrogram
fonction.OriginalL'auteur slayton