MATLAB Answers

How to add Mean and Median to a Histogram

47 views (last 30 days)
Michael Kuhlow
Michael Kuhlow on 11 Apr 2021 at 0:00
Commented: Rena Berman on 6 May 2021 at 18:01
I have created a histogram from the array labelled DistanceMiles using the command histogram(DistanceMiles) . I need to find the mean and indicate it on the plot with a red "x", and find the median, and indicate that with a black "o"
  3 Comments
Rena Berman
Rena Berman on 6 May 2021 at 18:01

(Answers Dev) Restored edit

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 11 Apr 2021 at 0:17
Edited: Image Analyst on 11 Apr 2021 at 16:30
The original question, before @Michael Kuhlow deleted it for some reason, asked how to indicate mean and median on a graph of the histogram of some data. Mean with a red x, and median with a black o.
Michael, try this. Adapt as needed.
data = randn(100, 1) + 10;
h = histogram(data)
dataMean = mean(data(:))
dataMedian = median(data(:))
grid on;
hold on;
% Put up vertical lines there
xline(dataMean, 'Color', 'r', 'LineWidth', 2);
xline(dataMedian, 'Color', 'k', 'LineWidth', 2);
% Find bin centers
binCenters = (h.BinEdges(1:end-1) + h.BinEdges(2:end))/2;
% Put up red x on top of the bar
[~, index] = min(abs(dataMean - binCenters))
plot(binCenters(index), h.Values(index), 'rx', 'LineWidth', 3, 'MarkerSize', 20);
[~, index] = min(abs(dataMedian - binCenters))
plot(binCenters(index), h.Values(index), 'ko', 'LineWidth', 3, 'MarkerSize', 20);

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by