2Dガウス分布のプロット

2Dガウス分布のプロット

指定された平均と分散を持つ 2D ガウス サンプルの作成を手伝っていただけますか?

私はガウス曲線の作り方しか知りません :D

\documentclass{article}
\usepackage{paralist,pst-func, pst-plot, pst-math, pstricks-add,pgfplots}
\usetikzlibrary{patterns,matrix,arrows}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[hide axis,clip=false,xmin=-4,xmax=4,xlabel={X},ymin=0,ymax=1] 
    \addplot[color=lime, samples=100] {1/sqrt(2)*exp(-(x+1)^2/1)} ;
    \end{axis}
\end{tikzpicture}
\end{document}

その式は次のとおりです。 ここに画像の説明を入力してください

これは 3 つの正規分布を組み合わせた例です。 ここに画像の説明を入力してください

答え1

このためには、正規分布の乱数を生成する方法が必要です。これを行う 1 つの方法は、Box-Muller 変換を使用することです。

PGFPlotsを使用した例を以下に示します(TikZ: 散布図と平行座標で同じデータを描画する) 数値がほぼ正規分布であることを示すために、周辺分布をプロットしました。

\documentclass{article}
\usepackage{pgfplots}
% Create a function for generating inverse normally distributed numbers using the Box–Muller transform
\pgfmathdeclarefunction{invgauss}{2}{%
  \pgfmathparse{sqrt(-2*ln(#1))*cos(deg(2*pi*#2))}%
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
    axis equal image,
    xmin=-2.5,xmax=2.5,
    ymin=-2.5, ymax=2.5,
    enlargelimits=false,
    xtick=data, 
    xticklabel=\empty,
    ytick=data,
    yticklabel=\empty,
    extra x ticks={-2,...,2},
    every extra x tick/.style={
        tick align=outside,
        xticklabel=\pgfmathprintnumber{\tick}
    },
    extra y ticks={-2,...,2},
    every extra y tick/.style={
        tick align=outside,
        yticklabel=\pgfmathprintnumber{\tick}
    }
]
\addplot [only marks, samples=100] ({invgauss(rnd,rnd)},{invgauss(rnd,rnd)});
\end{axis}
\end{tikzpicture}
\end{document}

関連情報