From ad0d83b2d2c82b7fb63aeecb24705c7739554901 Mon Sep 17 00:00:00 2001 From: Martin Thoma Date: Sun, 8 Jan 2017 06:59:23 +0100 Subject: [PATCH] Add truncated normal distribution density function --- .../Makefile | 33 ++++++++ .../README.md | 8 ++ ...d-normal-distribution-density-function.png | Bin 0 -> 17827 bytes ...d-normal-distribution-density-function.tex | 74 ++++++++++++++++++ 4 files changed, 115 insertions(+) create mode 100644 tikz/truncated-normal-distribution-density-function/Makefile create mode 100644 tikz/truncated-normal-distribution-density-function/README.md create mode 100644 tikz/truncated-normal-distribution-density-function/truncated-normal-distribution-density-function.png create mode 100644 tikz/truncated-normal-distribution-density-function/truncated-normal-distribution-density-function.tex diff --git a/tikz/truncated-normal-distribution-density-function/Makefile b/tikz/truncated-normal-distribution-density-function/Makefile new file mode 100644 index 0000000..7f08c2b --- /dev/null +++ b/tikz/truncated-normal-distribution-density-function/Makefile @@ -0,0 +1,33 @@ +SOURCE = truncated-normal-distribution-density-function +DELAY = 80 +DENSITY = 300 +WIDTH = 512 + +make: + pdflatex --shell-escape $(SOURCE).tex -output-format=pdf + make clean + +clean: + rm -rf $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot *.table + +gif: + pdfcrop $(SOURCE).pdf + convert -verbose -delay $(DELAY) -loop 0 -density $(DENSITY) $(SOURCE)-crop.pdf $(SOURCE).gif + make clean + +png: + make + make svg + inkscape $(SOURCE).svg -w $(WIDTH) --export-png=$(SOURCE).png + +transparentGif: + convert $(SOURCE).pdf -transparent white result.gif + make clean + +svg: + #inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg + pdf2svg $(SOURCE).pdf $(SOURCE).svg + # Necessary, as pdf2svg does not always create valid svgs: + inkscape $(SOURCE).svg --export-width=$(WIDTH) --export-plain-svg=$(SOURCE)1.svg + rsvg-convert -a -w 720 -f svg $(SOURCE)1.svg -o $(SOURCE).svg + rm $(SOURCE)1.svg diff --git a/tikz/truncated-normal-distribution-density-function/README.md b/tikz/truncated-normal-distribution-density-function/README.md new file mode 100644 index 0000000..5ad2b27 --- /dev/null +++ b/tikz/truncated-normal-distribution-density-function/README.md @@ -0,0 +1,8 @@ +Compiled example +---------------- +![Example](truncated-normal-distribution-density-function.png) + +Requirements +------------ + +LaTeX and `gnuplot` diff --git a/tikz/truncated-normal-distribution-density-function/truncated-normal-distribution-density-function.png b/tikz/truncated-normal-distribution-density-function/truncated-normal-distribution-density-function.png new file mode 100644 index 0000000000000000000000000000000000000000..745a6c9ee3da3a501dc02795c4e9ba5d6daef933 GIT binary patch literal 17827 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 literal 0 HcmV?d00001 diff --git a/tikz/truncated-normal-distribution-density-function/truncated-normal-distribution-density-function.tex b/tikz/truncated-normal-distribution-density-function/truncated-normal-distribution-density-function.tex new file mode 100644 index 0000000..24c317c --- /dev/null +++ b/tikz/truncated-normal-distribution-density-function/truncated-normal-distribution-density-function.tex @@ -0,0 +1,74 @@ +% used PGFPlots v1.14 +% (inspired by Jake's answer given here +% ) +\documentclass[border=5pt]{standalone} +\usepackage{pgfplots} + \pgfplotsset{ + compat=1.3, + } + % create cycle lists that uses the style from OPs figure + % + \pgfplotscreateplotcyclelist{line styles}{ + black,solid\\ + blue,dashed\\ + red,dotted\\ + orange,dashdotted\\ + } + % define a command which stores all commands that are needed for every + % `raw gnuplot' call + \newcommand*\GnuplotDefs{ + % set number of samples + set samples 50; + % + %%% from + % cumulative distribution function (CDF) of normal distribution + cdfn(x,mu,sd) = 0.5 * ( 1 + erf( (x-mu)/sd/sqrt(2)) ); + % probability density function (PDF) of normal distribution + pdfn(x,mu,sd) = 1/(sd*sqrt(2*pi)) * exp( -(x-mu)^2 / (2*sd^2) ); + % PDF of a truncated normal distribution + tpdfn(x,mu,sd,a,b) = pdfn(x,mu,sd) / ( cdfn(b,mu,sd) - cdfn(a,mu,sd) ); + } +\begin{document} + \begin{tikzpicture} + % define macros which are needed for the axis limits as well as for + % setting the domain of calculation + \pgfmathsetmacro{\xmin}{0} + \pgfmathsetmacro{\xmax}{1} + \begin{axis}[ + xmin=\xmin, + xmax=\xmax, + ymin=0, + %ymax=0.23, + %ytick distance=0.05, + %enlargelimits=0.05, + no markers, + smooth, + % use the above created cycle list ... + cycle list name=line styles, + % ... and append the following style to all `\addplot' calls + every axis plot post/.append style={ + very thick, + }, + yticklabel style={ + /pgf/number format/.cd, + fixed, + fixed zerofill, + precision=2, + }, + xlabel={x}, + ylabel={probability density}, + ] + \addplot gnuplot [raw gnuplot] { + % first call all the "common" definitions + \GnuplotDefs + % and then create the data tables + % in GnuPlot `x` key is identical to PGFPlots `domain` key + plot [x=\xmin:\xmax] tpdfn(x,0.8,0.3, 0, 1); + }; + \addplot gnuplot [raw gnuplot] { + \GnuplotDefs + plot [x=\xmin:\xmax] tpdfn(x,0.7,0.1, 0, 1); + }; + \end{axis} + \end{tikzpicture} +\end{document}