How to add Mean and Median to a Histogram
205 views (last 30 days)
Show older comments
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
Rik
on 11 Apr 2021
Why did you delete the question? Now the answer doesn't make sense anymore. Please restore it.
Answers (1)
Image Analyst
on 11 Apr 2021
Edited: Image Analyst
on 11 Apr 2021
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);
2 Comments
Juan Sebastian
on 13 Jan 2024
Edited: Juan Sebastian
on 13 Jan 2024
How can I estimade the mode for the histogram? I know that it is necesarry to estimate this parameters for data grouped.
Image Analyst
on 13 Jan 2024
@Juan Sebastian you can do
modeValue = mode(h.Values)
modeBin = h.BinEdges == modeValue
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!