Eu gostaria de fazer com que todas as setas que deveriam ser paralelas no meu diagrama comutativo fossem realmente paralelas. Aqui está meu diagrama:
\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}
Como posso mudar isso e obter um quadrado adequado?
Responder1
Em vez de uma matriz, use uma extensão especializada do TikZ, a saber 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}
A sintaxe é mais natural, os rótulos têm tamanho adequado e as setas são como na fonte matemática geral.
Responder2
\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}
ah, a resposta é quase a mesma desebastiano:-(. bem, o diagrama é um pouco mais quadrado :-)
Responder3
Na verdade, há uma pequena mudança a ser feita que corrigiria coisas que podem lhe interessar, pois também é útil em outras partes do LaTeX. O problema aqui é que \mu
tem descendente, mas FA
não tem. Você pode obter uma caixa que tenha "todas as alturas" associadas a letras altas e descendentes, mas sem largura \strut
, então:
F(\mu F) & FA\strut \\
\mu F & A\strut
O resto do documento pode permanecer exatamente igual. Se você estiver paranóico, poderá adicionar \strut
s às outras células, bem como à prova de futuro, caso altere seu conteúdo posteriormente.
De forma mais geral, você pode usar \vphantom
caixas sem largura com os mesmos parâmetros de altura e profundidade de uma determinada outra caixa e \hphantom
para caixas sem altura com a mesma largura de uma determinada outra caixa. Então a versão verdadeiramente paranóica seria
F(\mu F)\vphantom{FA} & FA\vphantom{F(\mu F)} \\
\mu F\vphantom{A} & A\vphantom{\mu F}
o que garantiria que você tivesse a mesma altura e profundidade em todas as colunas de cada linha. (Também teria a vantagem \strut
de ser "mínimo" em relação à altura e profundidade; por exemplo, se nada em uma determinada linha tivesse descendentes, adicionar um \strut
em todos os lugares daria profundidade, mas usar \vphantom
como acima não.)