Histogram plot isn't shown properly.
5 views (last 30 days)
Show older comments
When I am trying to plot the Histogram it looks like as shown below. If I try to scale the y axis as it is too high the variation in the lower values aren't seen. How to show a proper histogram plot so that the variation in the lower side can be also seen along with the highest point in the y axis? Kindly help
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/541461/image.jpeg)
3 Comments
dpb
on 7 Mar 2021
Can't change the characteristics of the image; any linear scaling of the axis will only change the numerical values, not the shape.
The usual "trick" for data which have a very large dynamic range is to use log scaling on one or both axes...
histogram(yourData)
hAx=gca; hAx.YScale='log'; % get axes handle; set y axis to logarithmic
Accepted Answer
dpb
on 7 Mar 2021
Edited: dpb
on 7 Mar 2021
Can't change the characteristics of the image; any linear scaling of the axis will only change the numerical values, not the shape.
The usual "trick" for data which have a very large dynamic range is to use log scaling on one or both axes...
histogram(yourData)
hAx=gca; hAx.YScale='log'; % get axes handle; set y axis to logarithmic
Illustration...
x=logspace(0,6,1000).';
nexttile, histogram(x)
nexttile, histogram(x), hAx=gca;hAx.YScale='log';
produced:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/541856/image.jpeg)
The downside is you can't have identically zero on the axis (there is no free lunch).
More Answers (0)
See Also
Categories
Find more on Histograms 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!