Kommutative Diagramme mit tikz-cd

Einleitung

Das Paket tikz-cd ermöglicht das Setzen kommutativer Diagramme direkt auf Basis von TikZ. Es stellt eine Matrix-ähnliche Umgebung bereit und bietet komfortable Pfeilbefehle, Beschriftungen und vielfältige Stiloptionen.

Kurzfassung: Lade \usepackage{tikz-cd} (oder \usetikzlibrary{cd}), schreibe deine Objekte tabellenartig in tikzcd und füge Pfeile mit \arrow bzw. \ar hinzu.

Video

Optionales Erklärvideo folgt in Bälde(Platzhalter):


Folien

Folien

Beschreibung

tikz-cd ist eine Ergänzung zu TikZ und wird in LaTeX per \usepackage{tikz-cd} geladen (alternativ \usetikzlibrary{cd}). Die Umgebung tikzcd funktioniert ähnlich wie tabular/array: Spalten trennt man mit &, Zeilen mit \\. Innerhalb von tikzcd ist standardmäßig Mathematikmodus aktiv.


Grundlagen

Minimalbeispiel

\documentclass{article}
\usepackage{tikz-cd}
\begin{document}

\begin{tikzcd}
A & B \\
C & D
\end{tikzcd}

\end{document}

Pfeile und Beschriftungen

\begin{tikzcd}
A \arrow[r, "\phi"] \arrow[d, red]
  & B \arrow[d, "\psi" red] \\
C \arrow[r, red, "\eta" blue]
  & D
\end{tikzcd}

Die Kurzform \ar ist als Alias von \arrow verfügbar.


Beispiele

Gebogene Pfeile

\begin{tikzcd}
A \ar[r] \ar[d] & B \ar[d] \ar[ddr, bend left] \\
C \ar[r] \ar[drr, bend right] & D \ar[dr] \\
& & E
\end{tikzcd}

Beschriftungspositionen

\begin{tikzcd}
A \arrow[r, "\phi" near start, "\psi"', "\eta" near end] & B
\end{tikzcd}

Mehrere Labels pro Pfeil sind möglich; das Apostroph ' spiegelt die Seite.


Wichtige Optionen

Abstände

\begin{tikzcd}[row sep=small, column sep=large]
A \arrow[r] \arrow[d] & B \arrow[d] \\
C \arrow[r] & D
\end{tikzcd}

row sep/column sep steuern Zeilen-/Spaltenabstände; es gibt benannte Größen wie tiny, small usw. :

Pfeilspitzen & Stile

Viele Pfeiltypen sind als Styles verfügbar (z. B. hook, dashrightarrow, two heads, squiggly, …).

\begin{tikzcd}
A \arrow[r, tail, two heads, dashed] & B
\end{tikzcd}

Absolute Quellen/Ziele

\begin{tikzcd}
A \arrow[to=2-2, blue] & B \\
C & D
\end{tikzcd}

from=…/to=… erlauben explizite Quell- und Zielangaben (z. B. 2-2 oder benannte Nodes).

Phantom Labels & „Crossing over“

\begin{tikzcd}
A \arrow[r] \arrow[d] \arrow[dr, phantom, "\ulcorner", very near start]
  & B \arrow[d] \\
C \arrow[r] & D
\end{tikzcd}

Phantom-Pfeile sind unsichtbar und dienen u. a. zum Platzieren von Symbolen. Für überkreuzte Pfeile hilft der Stil crossing over.


Typische Fehlerquellen

  • DVIs zeigen Diagramme nicht korrekt → direkt PDF erzeugen (z. B. pdflatex).
  • & in anderen Umgebungen (z. B. Beamer/Footnote): ggf. ampersand replacement=\& setzen.
  • Zu enge/weite Layouts: row sep/column sep, cramped nutzen.

Aufgaben & Übungen

Aufgabe 1: Grunddiagramm

Erzeuge ein Quadrat mit A,B,C,D und Pfeilen in alle Richtungen. Beschrifte einen Pfeil mit \phi.

Aufgabe 2: Labels und Stile

Füge mehreren Pfeilen Labels bei near start/near end hinzu und nutze unterschiedliche Pfeilarten (dashed, hook).

Aufgabe 3: Gebogene/überkreuzte Pfeile

Erzeuge ein „Pushout“-ähnliches Diagramm mit bend left/right und einem crossing over-Pfeil.


Hausaufgabe

  1. Baue ein 3×3-Diagramm mit mindestens einer from/to-Verbindung zu benannten Knoten.
  2. Nutze phantom, um ein Symbol (\ulcorner) gezielt zu platzieren.
  3. Stelle Abstände mit sep/row sep/column sep passend ein.

Weiterführendes

Paket Beschreibung tikz-cd

Offizielle Doku: „{tikzcd} — Commutative diagrams with TikZ“, Version 1.0 (04.05.2021).