How to visualize two histograms for comparative analysis?
95 ビュー (過去 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!