MATLAB Answers

short format for the normalized histogram

3 views (last 30 days)
Torkan
Torkan on 19 Feb 2020
Commented: Torkan on 19 Feb 2020
Hello,
I have the figure below. Does anybody know how can I use just two decimal points? I used the code below for plotting
r = histogram(angle_degree,'Normalization','pdf')
histfit(angle_degree,25,'normal')
yt = get(gca, 'YTick');
set(gca, 'YTick', yt, 'YTickLabel', yt/numel(angle_degree))
I want to show yt/numel(angle_degree) just two decimal points after dot.
Thanks

  0 Comments

Sign in to comment.

Answers (1)

Steven Lord
Steven Lord on 19 Feb 2020
One way to do this is to use the ruler object representing the Y axis and change the TickLabelFormat for that axis. Using a slightly modified version of one of the examples from the histogram documentation page, let's create a histogram.
x = randn(10000,1);
h = histogram(x, 'Normalization', 'pdf');
Get the handle to the axes in which the histogram is located.
ax = ancestor(h, 'axes');
Get the handle to the Y axis ruler of that axes.
Y = ax.YAxis;
Change the TickLabelFormat to something that provides 4 decimal places.
Y.TickLabelFormat = '%0.4f';

  1 Comment

Torkan
Torkan on 19 Feb 2020
Thank you! It is good,
However, when I use histfit everything is collapsed! Just use histfit after your own code

Sign in to comment.

Sign in to answer this question.