Question

I run

spectrogram(data, 64, 60, 256, 2,  'yaxis');

I get

enter image description here

I want to get range from 0 to 180 Hz, instead of normalised range from 0 to 1. I can change axis by

axis([0 450 0 180])

but it does not change the values.

I run unsuccessfully

spectrogram(180 .* data, 64, 60, 256, 2,  'yaxis');

How can you scale the range from normalised to real range?

Was it helpful?

Solution

The x-axis should be frequency. You need to know the sampling rate fs (is it 2 ?) of data. Then the frequency range will be (0:63)/64*fs

Actually you can get the frequency output in the spectrogram function:

[B,F,T]=spectrogram(data,64,60,256,2);  % if fs = 2 in your case

F is the frequency range.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top