How to typeset flowcharts in LaTeX?

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 =)


a new package (on ctan this week) is called flowchart; the package itself provides shapes for objects used in flowcharts, and the docs show how to build a flow chart with the shapes and pgf/tikz.

i don't do flowcharts any more, but this package looked a contender.

for details, see http://www.ctan.org/pkg/flowchart


On CTAN exists a package nassflow. The documentation contains an example on page 5.

The package is from 1997, but I was able to use it without problems with TeXLive 2012. It is not part of the TeXLive distribution (wrong license), so you must install it manual. For a quick test, just download everything in a directory and try it.