TikZ library for drawing Bayesian networks, graphical models and (directed) factor graphs in LaTeX.
Provides the following node styles:
latent
obs
det
const
factor
plate
gate
Provides the following commands (note that any of the arguments can be empty):
\factor [options] {name} {caption} {inputs} {outputs}
\plate [options] {name} {fitlist} {caption}
\gate [options] {name} {fitlist} {inputs}
\vgate {name} {fitlist-left} {caption-left} {fitlist-right} {caption-right} {inputs}
\hgate {name} {fitlist-top} {caption-top} {fitlist-bottom} {caption-bottom} {inputs}
\edge [options] {inputs} {outputs}
\factoredge [options] {inputs} {factors} {outputs}
Install the package by copying tikzlibrarybayesnet.code.tex to your LaTeX system or copy the file into projects that are using it. To use the library in your LaTeX file
\usepackage{tikz}
\usetikzlibrary{bayesnet}
Compile the LaTeX example:
pdflatex example.tex
and see the resulting PDF file example.pdf.
This library is derived from a technical report "Directed Factor Graph Notation for Generative Models" and the accompanying TikZ macros by Laura Dietz 2010 (http://people.cs.umass.edu/~dietz/). The technical report is available in this repository as dietz-techreport.pdf.
GraphViz (http://www.graphviz.org/) is a more general open source
graph visualization software. It uses DOT file format to describe the
structure of the graph. The DOT file can be converted to LaTeX using
dot2tex
(http://www.fauskes.net/code/dot2tex/).
UAI (http://graphmod.ics.uci.edu/uai08/FileFormat) is a simple text
file format to describe Markov networks. The UAI file format can be
converted to DOT file format using uai2dot
(https://github.com/drewfrank/uai2dot).
This work is released under the MIT license.