A flowchart showing how we may choose a math environment.
It shows using styles, placing nodes in a matrix, and drawing arrows using loops.
Full explanation in Chapter 9, Creating Graphics: Constructing a flowchart.
Edit and compile if you like:% Flowchart% Author: Stefan Kottwitz% https://www.packtpub.com/hardware-and-creative/latex-cookbook\documentclass[border=20pt]{standalone}\usepackage[a4paper,vmargin=3cm]{geometry}\usepackage{tikz}\usetikzlibrary{matrix,calc,shapes}\tikzset{treenode/.style = {shape=rectangle, rounded corners,draw, anchor=center,text width=5em, align=center,top color=white, bottom color=blue!20,inner sep=1ex},decision/.style = {treenode, diamond, inner sep=0pt},root/.style = {treenode, font=\Large, bottom color=red!30},env/.style = {treenode, font=\ttfamily\normalsize},finish/.style = {root, bottom color=green!40},dummy/.style = {circle,draw}}\newcommand{\yes}{edge node [above] {yes}}\newcommand{\no}{edge node [left] {no}}\begin{document}\begin{tikzpicture}[-latex]\matrix (chart)[matrix of nodes,column sep = 3em,row sep = 5ex,column 1/.style = {nodes={decision}},column 2/.style = {nodes={env}}]{|[root]| Formula & \\single-line? & equation \\centered? & gather \\aligned at relation sign? & align, flalign \\aligned at several places? & alignat \\first left, centered,last right? & multline \\& & |[decision]| numbered? \\& & |[treenode]| Add a \texttt{*} & |[finish]| Done \\};\draw(chart-1-1) edge (chart-2-1)\foreach \x/\y in {2/3, 3/4, 4/5, 5/6} {(chart-\x-1) \no (chart-\y-1) }\foreach \x in {2,...,6} {(chart-\x-1) \yes (chart-\x-2) }(chart-7-3) \no (chart-8-3)(chart-8-3) edge (chart-8-4);\draw(chart-6-1) -- +(-2,0) |- (chart-1-1)node[near start,sloped,above] {no, reconsider};\foreach \x in {2,...,6} {\draw (chart-\x-2) -| (chart-7-3);}\draw (chart-7-3) -| (chart-8-4)node[near start,above] {yes};\end{tikzpicture}\end{document}
Open in Overleaf: math-flowchart.tex