Help with axes labels on histogram plot

20 views (last 30 days)
Hello,
I am simply trying to add labels to this histogram under the the middle of the columns and I am unable to figure out how to add for the other two columns.
histogram(F)
title('Distribution of Traction Forces')
xticks(0.0135)
xticklabels("0.149")
yticks(1:5)
  1 Comment
Dyuman Joshi
Dyuman Joshi on 6 Nov 2023
"... I am unable to figure out how to add for the other two columns."
Supply the values for the other two columns as well, along with the first one.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 6 Nov 2023
You're manually telling it to do just one tick label. Let it do it automatically and you'll get them. Get rid of the calls to xticks and xticklabels.
F = [.149, .194, .298*ones(1, 5), 3*.149];
histogram(F)
title('Distribution of Traction Forces')
xlabel('Value');
ylabel('Count');

More Answers (1)

Steven Lord
Steven Lord on 6 Nov 2023
If you want the labels to be only in the center of the bars, use the BinEdges property of the histogram to compute where the ticks should be. I'll make a histogram with 17 bins (so the math doesn't work out quite so nicely.)
x = randn(1, 1e5);
n = 17;
h = histogram(x, n);
This has n+1 (in this case, 18) edges.
E = h.BinEdges
E = 1×18
-4.5000 -3.9500 -3.4000 -2.8500 -2.3000 -1.7500 -1.2000 -0.6500 -0.1000 0.4500 1.0000 1.5500 2.1000 2.6500 3.2000 3.7500 4.3000 4.8500
Use diff to compute the width of each bin (or for uniform bins, like this histogram has, use the BinWidth property.)
W = h.BinWidth % or
W = 0.5500
W = diff(E)
W = 1×17
0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500 0.5500
Each bin center is the left edge plus half the bin width. But the last bin edge isn't involved at this step; we don't need the "center" that's past the right edge of the histogram.
C = E(1:end-1) + W/2
C = 1×17
-4.2250 -3.6750 -3.1250 -2.5750 -2.0250 -1.4750 -0.9250 -0.3750 0.1750 0.7250 1.2750 1.8250 2.3750 2.9250 3.4750 4.0250 4.5750
Now set those ticks.
xticks(C)

Categories

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

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!