How to visualize two histograms for comparative analysis?
97 次查看(过去 30 天)
显示 更早的评论
Basically I have two datasets and I want to perform a comparative analysis by showing how many data fall under a specific range. Any idea as how to do it?
Thanks Alex
3 个评论
Anupam Sharma
2019-12-12
This is not working in following code. I am using it exactly as mentioned above but it shows the second histogram only. Can you help ?
% MATLAB R2019a
% Setup
N = [1:5 10 20 40];
LB = 0;
UB = 3;
n = 10000;
% Generate random variates
X = LB + (UB - LB)*rand(max(N),n);
Sn = cumsum(X);
mu = 1.5;
sigma = .75;
S_1 = mu + sigma.*randn(n, 1)
hist1= histogram(Sn(1,:),'Normalization','pdf','EdgeColor', 'blue', 'FaceColor', 'blue')
hold on
hist2 = histogram(S_1(:), 'EdgeColor', 'green', 'FaceColor', 'green', 'FaceAlpha', 0.2);
采纳的回答
Image Analyst
2018-4-10
The histograms will tell you that - how many counts in each range. Use histogram() for visualization, or histcounts() and bar().
3 个评论
the cyclist
2018-4-11
Here is an example of using Image Analyst's idea of using both histcounts and bar:
x = randn(2000,1); y = 0.1 + randn(2000,1);
binRange = -3:0.5:3;
hcx = histcounts(x,[binRange Inf]); hcy = histcounts(y,[binRange Inf]);
figure bar(binRange,[hcx;hcy]')
更多回答(1 个)
the cyclist
2018-4-10
As shown in the documentation for the histogram histogram, you can plot two overlapping histograms on one figure like this
x = randn(2000,1);
y = 1 + randn(5000,1);
h1 = histogram(x);
hold on
h2 = histogram(y);
If you have the Statistics and Machine Learning Toolbox, you can also use the Kolmogorov-Smirnov test to determine whether the CDFs of the two distributions are statistically different.
4 个评论
Milagre MANHIQUE
2022-1-28
Thank you very much, I will proceed as you advise.
I thank you deeply.
Milagre MANHIQUE
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!