How can I generate equal visual witdh bars with bar graph and log absciss scale ?

20 views (last 30 days)
Hello everyone,
My problem is that I want to obtain a graph similar to this one (consider the green bars only) with Matlab.
The things is that with a logarithmic absciss scale with Matlab, I obtain:
Is there a way to generate bars with a width that increase when this bar is located on the right of the absciss scale in order to hev "visualy" the same width for each bar ?
Regards
N.B : I put my code as an attached file but it is quite simple.

Accepted Answer

G A
G A on 20 Jul 2019
Edited: G A on 20 Jul 2019
Instead of making the x-scale logarithmic by set(gca, 'xscale','log'), use linear x-scale and log10(Frequency) as X

More Answers (1)

Roman Katzer
Roman Katzer on 20 Feb 2024
I used the stairs plot function with specified band edges. Code is attached.
What I don't know is why the fractional spectra from poctave would be different, depending on whether I calculate them from time signal os the time signal's PSD. If anyone has an idea, please help.
noise spectra
sine spectra

Categories

Find more on Discrete Data Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!