How can I plot the profile/skyline of an histogram from histcounts?

8 views (last 30 days)
Hi, how can I plot the profile/skyline of an histogram from histcounts?
This is my attempt with the function stairs, which does not work:
X = normrnd(3,10,[1,1000]);
[values, edges] = histcounts(X,100);
stairs(edges,values)
However, if possible, I would like to use the plot function instead of stairs.

Accepted Answer

Steven Lord
Steven Lord on 9 Mar 2022
If you have to go through histcounts first:
X = normrnd(3,10,[1,1000]);
[values, edges] = histcounts(X,100);
h = histogram('BinCounts', values, 'BinEdges', edges, 'DisplayStyle', 'stairs');
But if you don't have to go through histcounts first, just use histogram directly.
h = histogram(X, 100, 'DisplayStyle', 'stairs');
You get the same values and edges.
values2 = h.BinCounts;
edges2 = h.BinEdges;
isequal(edges, edges2)
ans = logical
1
isequal(values, values2)
ans = logical
1

More Answers (0)

Categories

Find more on Data Distribution 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!