MATLAB-绘制按类别分组的多个直方图

时间:2019-05-25 17:42:10

标签: matlab histogram matlab-figure

我有一个样本数据,其中包含有关人的体重的信息。我已根据性别拆分了这些数据,并按性别分组了箱形图:

Box Plot

我是通过以下代码实现的:

function boxplotByGender(malesData, femalesData, overallData,...
                        graphName, figureLocation)

% group the samples by gender
grouping = [ones(size(malesData));
            2 * ones(size(femalesData));
            3 * ones(size(overallData))];

boxGraph = figure('Name', 'Box Plot', 'NumberTitle', 'off');
boxplot([malesData; femalesData; overallData], grouping);
title(graphName);
set(gca, 'XTickLabel', {'Males', 'Females', 'Both'});
movegui(boxGraph, figureLocation)

end

现在我想对直方图做同样的事情。有什么想法可以解决吗?

1 个答案:

答案 0 :(得分:1)

怎么样:

hold on
histogram(overallData)
histogram(malesData)
histogram(femalesData)
hold off

这将以半透明颜色在一个轴上绘制所有直方图,因此您可以看到所有这些直方图。您可以使用“ FaceColor”属性设置颜色,以使其更有意义(例如male + female = overall)。

使用默认颜色时,它应如下所示:

enter image description here