How to get a bar plot with unequal bin intervals?

3 vues (au cours des 30 derniers jours)
Sim
Sim le 1 Mar 2024
Commenté : Voss le 1 Mar 2024
How can I show the following bars (bar_heights) with unequal bin intervals (bin_edges)?
bin_edges = [0 5;
5 20;
20 100];
bar_heights = [20;10;30];
bar(bar_heights)
Basically, I would like to see the bar with height 20 starting at xtick 0 and ending at xtick 5, then the bar with height 10 starting at xtick 5 and ending at xtick 20, and the bar with height 30 from xtick 20 to xtick 100.
  1 commentaire
Sim
Sim le 1 Mar 2024
Maybe a way, but I am not able to show the last edge of the last bin, i.e. 100:
bin_edges = [0 5 20];
bar_heights = [20 10 30];
bar(bin_edges,bar_heights','histc')

Connectez-vous pour commenter.

Réponse acceptée

Voss
Voss le 1 Mar 2024
Modifié(e) : Voss le 1 Mar 2024
bin_edges = [0 5 20 100]; % include the last edge (100)
bar_heights = [20 10 30];
bar(bin_edges,[bar_heights(:); 0],'histc') % append a 0 for plotting the last bin
xlim(bin_edges([1 end])) % set xlim to avoid showing the last (0-height) bin
  2 commentaires
Sim
Sim le 1 Mar 2024
thanks a lot @Voss!
Voss
Voss le 1 Mar 2024
You're welcome!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Graph and Network Algorithms dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by