我怎样才能重新创建这些图形?

我怎样才能重新创建这些图形?

我的第一个问题,我最近才开始使用 TexWorks。我正在用 LaTeX 写笔记,为写本科论文做准备。到目前为止,我已经能够通过阅读 Stack Exchange 上的教程学习如何重现课本中的图形。

但这让我很困惑。我这样做对吗?

我怎样才能使标准正态分布曲线看起来像我的书中的那样?

\documentclass[a4paper, 12pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, arrows, backgrounds, positioning, matrix, calc, chains, fit}
\usepackage{pgfplots}  
\pgfmathdeclarefunction{norm}{3}{%
  \pgfmathparse{sqrt(0.5*#3/pi)*exp(-0.5*#3*(#1-#2)^2)}%
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
    width=1*\textwidth,
    xlabel = {Residualer ($e_i$)},
    ylabel = {Antall enheter},
    ymin=0, ymax=10,
    xmin=0, xmax=70,
    minor y tick num = 3,
    area style,
    ]
\addplot+[ybar interval,mark=no] plot coordinates { (0, 5) (10, 9) (20, 7) (30, 3) (40, 1) (50, 2) (60, 1) (70, 1)};
\addplot [dashed, very thick, draw=red,  domain=0:70, samples=2000, smooth]
  (x, {norm(x, 35, 0.25)});
\end{axis}
\end{tikzpicture}
\end{document}

人物: 具有正态分布曲线的直方图。

欢迎任何帮助,提前致谢。

答案1

曲线似乎是基于下图的值。您可以使用这些值来计算平均值 (33.9655) 和标准差 (10.25)。然后计算一个因子 (231.2364) 来缩放 y 轴上的正态分布。

我改变了norm等于正态分布(定义如下这里)。

我减少了样本数量以提高速度(samples=200)。

代码

\documentclass[a4paper, 12pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, arrows, backgrounds, positioning, matrix, calc, chains, fit}
\usepackage{pgfplots}  
\pgfmathdeclarefunction{norm}{3}{%
    % #1=x, #2=mu, #3=sigma
    \pgfmathparse{exp(-.5 * ((#1-#2) / #3)^2) / (#3 * sqrt(2*pi))}%
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
    width=1*\textwidth,
    xlabel = {Residualer ($e_i$)},
    ylabel = {Antall enheter},
    ymin=0, ymax=10,
    xmin=0, xmax=70,
    minor y tick num = 3,
    area style,
    ]
\addplot+[ybar interval,mark=no] plot coordinates { (0, 5) (10, 9) (20, 7) (30, 3) (40, 1) (50, 2) (60, 1) (70, 1)};
\addplot [dashed, very thick, draw=red,  domain=0:70, samples=200, smooth]
  (x, {231.2364*norm(x, 33.9655, 10.25)});
\end{axis}
\end{tikzpicture}
\end{document}

结果

在此处输入图片描述

相关内容