So zeichnen Sie eine Normalkurve mit korrekten y-Werten

So zeichnen Sie eine Normalkurve mit korrekten y-Werten

Folgefrage zuGlockenförmige Kurve in TikZ-PGF zeichnen

Ich bin neu bei LaTeX und setze ein Dokument für meinen Statistikkurs und versuche, mit LaTeX eine normale Wahrscheinlichkeitsverteilung zu erzeugen. Ich habe den Code geändert, der in Jakes Antwort auf die Frage, auf die ich hier verwiesen habe, angezeigt wird, und habe Folgendes erhalten:

\documentclass{article}
\usepackage{pgfplots}
\pgfmathdeclarefunction{gauss}{2}{% normal distribution where #1 = mu and #2 = sigma
  \pgfmathparse{1/(#2*sqrt(2*pi))*exp(-((x-#1)^2)/(2*#2^2))}%
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
  no markers, domain=2.1:2.3, samples=100,
  axis lines*=left,
  height=5cm, width=12cm,
  xtick={2.12, 2.14, 2.16, 2.18, 2.2, 2.22, 2.24, 2.26, 2.28}, ytick={0.5, 1.0},
  enlargelimits=false, clip=false, axis on top,
  ]
\addplot{gauss(2.2,0.0179)};
\end{axis}
\end{tikzpicture}
\end{document}

Das Problem besteht darin, dass beim Kompilieren die Werte der Y-Achse nicht annähernd dort liegen, wo sie sein sollten: Code-Ausgabe

Wie behebe ich das?

Ich frage mich, ob es ein Systemproblem ist, denn die Ausgabe in Jakes Antwort aufGlockenkurve/Gauß-Funktion/Normalverteilung in TikZ/PGFhat entsprechende Y-Achsenwerte und ich sehe keinen Grund, warum es anders sein sollte.

Antwort1

Sie erhalten keine Werte zwischen 0 und 1 für die y-Achse aufgrund des Multiplikationsfaktors 1/(#2*sqrt(2*pi))im Ausdruck für die Funktion. Verwenden Sie

ytick={0.5, 1.0}

gibt zu kleine Werte für den tatsächlichen Wertebereich von 0 bis ca. 20 aus. Verwenden Sie einen geeigneten Wertebereich in der y-Achse:

\documentclass{article}
\usepackage{pgfplots}
%\pgfplotsset{compat=1.10}

\pgfmathdeclarefunction{gauss}{2}{% normal distribution where #1 = mu and #2 = sigma
  \pgfmathparse{1/(#2*sqrt(2*pi))*exp(-((x-#1)^2)/(2*#2^2))}%
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
  no markers, domain=2.1:2.3, samples=100,smooth,
  axis lines*=left,
  height=5cm, width=12cm,
  xtick={2.12, 2.14, 2.16, 2.18, 2.2, 2.22, 2.24, 2.26, 2.28}, 
  ytick={4.0,8.0,...,20.0},
  enlargelimits=upper, clip=false, axis on top,
  ]
\addplot{gauss(2.2,0.0179)};
\end{axis}
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

Oder unterdrücken Sie den Faktor in der definierenden Gleichung, um einen geeigneten Bereich zwischen 0 und 1 zu erhalten:

\documentclass{article}
\usepackage{pgfplots}
%\pgfplotsset{compat=1.10}

\pgfmathdeclarefunction{gauss}{2}{% normal distribution where #1 = mu and #2 = sigma
  \pgfmathparse{exp(-((x-#1)^2)/(2*#2^2))}%
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
  no markers, domain=2.1:2.3, samples=100,smooth,
  axis lines*=left,
  height=5cm, width=12cm,
  xtick={2.12, 2.14, 2.16, 2.18, 2.2, 2.22, 2.24, 2.26, 2.28}, 
  enlargelimits=upper, clip=false, axis on top,
  ]
\addplot{gauss(2.2,0.0179)};
\end{axis}
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen