Spectrum Analyser: One-third octave bands

13 views (last 30 days)
I need to customise the Spectrum Analyser X axis ticks and labels to new values that correspond to the One-third octave frequency bands. I put the description values below:
How can I do it?

Accepted Answer

Gabriele Bunkheila
Gabriele Bunkheila on 13 Dec 2017
Hi Nycholas,
I am broadly re-using here my comment on your related question, for completeness.
Spectrum Analyzer doesn't yet provide the ability to use a custom frequency axis such as the 1/3 octave grid that you would like to see. From the mere point of view of logarithmic frequency resolution, something you can try right away is to set the FrequencyScale property to 'Log'. Obviously that won't help you get the exact 1/3 octave grid, but it would give a log-spaced visual resolution.
I will post more advice if any other simple idea comes to mind.
If 1/3 octave resolution happened to be absolutely necessary and your aim is not log-spaced visualization but actual log or octave-spaced spectral resolution, then you may want to put together your own simple octave-band analyzer. Those are typically built using octave-spaced filterbanks rather than simply providing a log scale on an FFT-based linear-frequency analysis. If that was of interest, then something you could leverage is octaveFilter . To get the same visualization across MATLAB and Simulink you could then use dsp.ArrayPlot (or the Array Plot block), with XDataMode set to 'Custom'.
For reference, a good example on octaveFilter is Octave-Band and Fractional Octave-Band Filters .

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by