6 Block Diagram Language Tutorial

Very often the DOT language is used to lay out blocks in a certain geographical arrangement, e.g., for organizational charts, or similar. This is hard, since graphviz aims to generate a layout automatically and one has to tweak and workaround the layout algorithm by, for example, inserting invisible nodes, etc. This is the primary motivation for the Block Diagram language: to be able to control, how nodes of a diagram are laid out. This language targets network diagrams, architecture figures, software stack figures and any figure, where blocks are arranged and this arrangement conveys meaing. Of course, we have many mouse-based variants, but sometimes it is just easier to do it via text. It also integrares well to command-line document toolchains, such as tex or doxygen.