Ich möchte alle Pfeile, die in meinem kommutativen Diagramm parallel sein sollten, tatsächlich parallel machen. Hier ist mein Diagramm:
\begin{center}
\begin{tikzpicture}
\matrix (m) [matrix of math nodes,row sep=3em,column sep=4em,minimum width=3em]
{
F(\mu F) & FA \\
\mu F & A \\};
\path[-stealth]
(m-1-1) edge node [left] {$ in_{F} $} (m-2-1)
edge node [above] {$F(h)$} (m-1-2)
(m-2-1.east) edge node [above] {$h$}
node [above] {} (m-2-2)
(m-1-2) edge node [right] {$ g $} (m-2-2)
;
\end{tikzpicture}
\end{center}
Wie kann ich das verschieben und ein ordentliches Quadrat erhalten?
Antwort1
Verwenden Sie anstelle einer Matrix eine spezielle Erweiterung von TikZ, und zwar tikz-cd
:
\documentclass[a4paper,12pt]{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
F(\mu F) \arrow[r, "F(h)"] \arrow[d, "\mathit{in}_{F}"'] & FA \arrow[d, "g"] \\
\mu F \arrow[r, "h"] & A
\end{tikzcd}
\end{document}
Die Syntax ist natürlicher, die Beschriftungen haben die richtige Größe und die Pfeile entsprechen der allgemeinen Mathematikschriftart.
Antwort2
\documentclass[border=3mm]{standalone}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[row sep=huge] % <---
F(\mu F)
\arrow{r}{F(h)}
\arrow{d}{in_F}
&
FA
\arrow{d}{g} \\
%
A
\arrow{r}{h}
&
(\mu F)
\end{tikzcd}
\end{document}
oh, die Antwort ist fast die gleiche wie vonsebastiano:-(. also das Diagramm ist etwas quadratischer :-)
Antwort3
Es gibt eigentlich eine ganz kleine Änderung, die Dinge beheben könnte, die Sie interessieren könnten, da sie auch in anderen Teilen von LaTeX nützlich ist. Das Problem hier ist, dass \mu
eine Unterlänge hat, während FA
dies nicht der Fall ist. Sie können eine Box erhalten, die „alle Höhen“ hat, die mit großen Buchstaben und Unterlängen verknüpft sind, aber keine Breite über \strut
, also:
F(\mu F) & FA\strut \\
\mu F & A\strut
Der Rest des Dokuments kann genau so bleiben wie er ist. Wenn Sie Angst haben, können Sie \strut
den anderen Zellen s hinzufügen und so für die Zukunft vorsorgen, falls Sie den Inhalt später ändern.
Allgemeiner gesagt können Sie \vphantom
für breitelose Boxen mit denselben Höhen- und Tiefenparametern wie eine gegebene andere Box und \hphantom
für höhenlose Boxen mit derselben Breite wie eine gegebene andere Box verwenden. Die wirklich paranoide Version wäre also
F(\mu F)\vphantom{FA} & FA\vphantom{F(\mu F)} \\
\mu F\vphantom{A} & A\vphantom{\mu F}
Dies würde garantieren, dass Sie in allen Spalten jeder Zeile dieselbe Höhe und Tiefe haben. (Es hätte außerdem den Vorteil, \strut
dass es in Bezug auf Höhe und Tiefe „minimal“ ist; wenn beispielsweise nichts in einer bestimmten Zeile Unterlängen hätte, \strut
würde das Hinzufügen von „überall“ ihm Tiefe verleihen, die Verwendung \vphantom
wie oben jedoch nicht.)