how to reverse the axis in matlab??

27 vues (au cours des 30 derniers jours)
Hemant Nagvanshi
Hemant Nagvanshi le 14 Juin 2014
clc, clear all, close all;
fs = 400;
dt = 1/fs;
t = 0:dt:0.4;
x = sin(2*pi*50*t)';
l = length(x);
y = ceil(log2(l));
nfft = 2^y;
noverlap = 8;
figure(1)
window = 10;
spectrogram(x,window,noverlap,nfft,fs);
title('Window = 25 ms');
The above code plots a spectrogram such that Time is on Y-axis and Frequency on X-axis, I want reverse of it. How can I do that??

Réponse acceptée

SRI
SRI le 14 Juin 2014
Hi Hemant Kindly Try this code you will get the result as you wish
fs = 400;
dt = 1/fs;
t = 0:dt:0.4;
x = sin(2*pi*50*t)';
l = length(x);
y = ceil(log2(l));
nfft = 2^y;
noverlap = 8;
figure(1)
window = 10;
[S F T P] = spectrogram(x,window,noverlap,nfft,fs);
surf(T,F,10*log10(P),'edgecolor','none');
title('Window = 25 ms');
view(0,90);
xlabel('Time (Seconds)');
ylabel('Hz');
  1 commentaire
Hemant Nagvanshi
Hemant Nagvanshi le 15 Juil 2014
time axis is on x-axis but the time are rage are not full. I mean to say spectrogram is not plotted for full time range, what about that.

Connectez-vous pour commenter.

Plus de réponses (1)

Hemant Nagvanshi
Hemant Nagvanshi le 15 Juil 2014
spectrogram(x,window,noverlap,nfft,fs); %plots freq in x-axis by default
spectrogram(x,window,noverlap,nfft,fs,'yaxis'); %plots freq in y-axis

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by