Add a line plot on bar chart

조회 수: 3 (최근 30일)
H-H
H-H 2013년 9월 29일
답변: Image Analyst 2013년 9월 29일
Hi there, I want to add a Normal distribution function (mean=0.5, sd=0.167) as a line on top of this bar chart. I want to keep the same x-axis and Y-axis. and I don't want to Fit the PDF. This is my bar chart construction in bellow. Can you please comment? Thanks.
X1 = [ 1.994711e-02 5.978008e-02 9.961305e-02 1.394460e-01 1.792790e-01 2.191120e-01 2.589449e-01 2.987779e-01 3.386109e-01 3.784439e-01 4.182768e-01 4.581098e-01 4.979428e-01 5.377757e-01 5.776087e-01 6.174417e-01 6.572747e-01 6.971076e-01 7.369406e-01 7.767736e-01 8.166066e-01 8.564395e-01 8.962725e-01 9.361055e-01 9.759384e-01 ]; N1 = [ 6.910998e-02 6.358135e-02 5.939631e-02 5.477412e-02 5.035550e-02 4.661832e-02 4.306543e-02 3.973325e-02 3.640108e-02 3.456677e-02 3.427749e-02 3.374177e-02 3.321890e-02 3.323176e-02 3.361105e-02 3.347819e-02 3.356605e-02 3.354248e-02 3.344391e-02 3.361105e-02 3.341176e-02 3.348248e-02 3.306890e-02 3.352534e-02 3.318676e-02 ]; y=bar(X1,N1,1.0); xmin = min(X1); xmax = max(X1); xwid = xmax - xmin; xmin = xmin - 0.5 * xwid / 25; xmax = xmax + 0.5 * xwid / 25; ymax = max(N1); axis([xmin xmax 0 ymax]) xlabel('X1','FontWeight','bold','FontSize',12) ylabel('Probabilities','FontWeight','bold','FontSize',12) set(gca,'linewidth',2) set(gca,'fontweight','bold') set(gca,'fontsize',12)

채택된 답변

Image Analyst
Image Analyst 2013년 9월 29일
Try this:
X1 = [
1.994711e-02 5.978008e-02 9.961305e-02 1.394460e-01 1.792790e-01 2.191120e-01 2.589449e-01 2.987779e-01 3.386109e-01 3.784439e-01 4.182768e-01 4.581098e-01 4.979428e-01 5.377757e-01 5.776087e-01 6.174417e-01 6.572747e-01 6.971076e-01 7.369406e-01 7.767736e-01 8.166066e-01 8.564395e-01 8.962725e-01 9.361055e-01 9.759384e-01 ];
N1 = [
6.910998e-02 6.358135e-02 5.939631e-02 5.477412e-02 5.035550e-02 4.661832e-02 4.306543e-02 3.973325e-02 3.640108e-02 3.456677e-02 3.427749e-02 3.374177e-02 3.321890e-02 3.323176e-02 3.361105e-02 3.347819e-02 3.356605e-02 3.354248e-02 3.344391e-02 3.361105e-02 3.341176e-02 3.348248e-02 3.306890e-02 3.352534e-02 3.318676e-02 ];
% Plot N1
subplot(3,1,1);
y=bar(X1,N1,1.0);
xmin = min(X1);
xmax = max(X1);
xwid = xmax - xmin;
xmin = xmin - 0.5 * xwid / 25;
xmax = xmax + 0.5 * xwid / 25;
ymax = max(N1);
axis([xmin xmax 0 ymax])
xlabel('X1','FontWeight','bold','FontSize',12)
ylabel('Probabilities','FontWeight','bold','FontSize',12)
set(gca,'linewidth',2)
set(gca,'fontweight','bold')
set(gca,'fontsize',12)
% Plot Gaussian
subplot(3,1,2);
x = X1; %linspace(0, 1, length(X1));
g = exp(-(x-0.5).^2/(2*0.167^2))
% Make g the same height at the tallest N1
plot(x, g, 'r-', 'LineWidth', 3);
grid on;
% Plot both
subplot(3,1,3);
bar(X1,N1,1.0);
hold on;
% Make g the same height at the tallest N1
g = g * max(N1);
plot(x, g, 'r-', 'LineWidth', 3);
grid on;

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Discrete Data Plots에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by