What does "plot(spectrogram(M))" mean?
Afficher commentaires plus anciens
"plot(spectrogram(M(:,1)))" generates a plot whose y-axis values equal those of the x. The result is a set of lines that spiral outwards from a point in the center.
What is the significance of these axes? What does this result say about the data on a broad level?
Réponses (1)
Wayne King
le 1 Oct 2013
Modifié(e) : Wayne King
le 1 Oct 2013
If the function you are using is the MathWorks' version of spectrogram, then you are plotting a complex-valued function. I don't really see the use case for wanting to do that. I can see wanting to plot the magnitude and phase separately, but that is not what plot(spectrogram(x)) is doing.
First, make sure you are using the MathWorks' spectrogram, enter
>>which spectrogram
and ensure that you get something like:
matlab\toolbox\signal\signal\spectrogram.m
If the above is true, then read the help for spectrogram to see how to plot something meaningful:
t=0:0.001:2; % 2 secs @ 1kHz sample rate
x=chirp(t,0,1,150); % Start @ DC, cross 150Hz at t=1sec
F = 0:.1:100;
[y,f,t,p] = spectrogram(x,256,250,F,1E3,'yaxis');
% NOTE: This is the same as calling spectrogram with no outputs.
surf(t,f,10*log10(abs(p)),'EdgeColor','none');
axis xy; axis tight; colormap(jet); view(0,90);
xlabel('Time');
ylabel('Frequency (Hz)');
Catégories
En savoir plus sur Annotations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!