[Tex/LaTex] How to typeset flowcharts in LaTeX

flow chartsgraphics

I know that it can be done with graphics packages like TikZ, but it seems to be a bit of an overkill. And for those not already familiar with the TikZ system, learning it can be a bit of a barrier. So my question is

Assuming the advanced graphics capabilities are not necessary, and I just need a bare-bones flow chart (which should be implementable just using the picture environment), is there a LaTeX package for simply making a flow chart?

Best Answer

Pstricks with pst-matrix

This will require you to atleast be tiny-bit familiar with pstricks. You layout nodes in a pstmatrix and connect them up. More info and examples here http://tug.org/PSTricks/main.cgi?file=pst-node/psmatrix/psmatrix#flowchart

TikZ

IMHO it is easier and better than previous one. Since you can design a few node styles (1-3 lines) and then possition nodes relative to each other (above, right, below, north east, etc) and connect them up with cool arrows in one go (A -- B -- C -- D) with an appropriate style the arrows will be automagic.

You can use the TikZ matrix library for a more rigid control of node positioning. See texdoc tikz for the excellent tutorial on how to do simple -> advanced flowchart and a simple example here.

Dia

You can use Dia (website and windows installer) for a point-and-click solution. It has a few different TeX exporters (pstricks, metapost and pgf/tikz)

Graphviz

You can use powerful graphviz / dot language to generate auto-layout for diagrams. This works very well for both small and large datasets. Although you have much less control in "alligning" nodes.

The website is here. There are a few solutions to "integrate" dot diagrams with LaTeX. See this, here and finally this.

Other

Like with any graphics you can create a flowchart in inkscape/OO.o etc and just do \includegraphics in your document. If you fancy that. Very depends on your needs.

ps. /me is a TikZ fan =)

Related Question