How to plot pdf and cdf on my histograms

조회 수: 18 (최근 30일)
N/A
N/A 2020년 3월 10일
댓글: N/A 2020년 3월 10일
Hello,
I have 2 histograms with 5000 and 50 random samples. (Mu=5 and sd=7) I want to add their pdf and cdf curve on my histograms.
Can you help me, please?
xNormal = random('Normal',5,7,1,5000);
h = histogram(xNormal,'Normalization','pdf')
hold on
yNormal = random('Normal',5,7,1,50);
hold on
h = histogram(yNormal,'Normalization','pdf');
hold on
xlabel('Class Intervals');
ylabel('Frequency');
  댓글 수: 1
Rik
Rik 2020년 3월 10일
Please don't double-post your question.

댓글을 달려면 로그인하십시오.

채택된 답변

Ameer Hamza
Ameer Hamza 2020년 3월 10일
편집: Ameer Hamza 2020년 3월 10일
You are already plotting the pdf of these distributions. Do you want to draw cdf on the same graph? If so, just pass the option 'Normalization','pdf' to the histogram function. For example,
xNormal = random('Normal',5,7,1,5000);
yNormal = random('Normal',5,7,1,50);
estimated_dist_x = fitdist(xNormal', 'Normal');
xRange = linspace(min(xNormal), max(xNormal));
xPdf = pdf(estimated_dist_x, xRange);
xCdf = cdf(estimated_dist_x, xRange);
estimated_dist_y = fitdist(xNormal', 'Normal');
yRange = linspace(min(yNormal), max(yNormal));
yPdf = pdf(estimated_dist_y, yRange);
yCdf = cdf(estimated_dist_y, yRange);
fig1 = figure();
hold on;
xlabel('Class Intervals');
histogram(xNormal,'Normalization','pdf');
plot(xRange, xPdf, 'LineWidth', 2);
ylabel('pdf');
yyaxis right
plot(xRange, xCdf, 'LineWidth', 2);
ylabel('cdf');
fig2 = figure();
hold on;
xlabel('Class Intervals');
histogram(yNormal,'Normalization','pdf');
plot(yRange, yPdf, 'LineWidth', 2);
ylabel('pdf');
yyaxis right
plot(yRange, yCdf, 'LineWidth', 2);
ylabel('cdf');
  댓글 수: 5
Ameer Hamza
Ameer Hamza 2020년 3월 10일
You ran the older code again. The updated code is changed.
N/A
N/A 2020년 3월 10일
oh, thank you :)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Histograms에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by