Me gustaría hacer que todas las flechas que deberían ser paralelas en mi diagrama conmutativo, en realidad sean paralelas. Aquí está mi 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}
¿Cómo puedo eliminar esto y obtener un cuadrado adecuado?
Respuesta1
En lugar de una matriz, utilice una extensión especializada de 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}
La sintaxis es más natural, las etiquetas tienen el tamaño adecuado y las flechas son como en la fuente matemática general.
Respuesta2
\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, la respuesta es casi la misma que la desebastian:-(. Bueno, el diagrama es un poco más cuadrado :-)
Respuesta3
En realidad, hay un cambio bastante pequeño que solucionaría cosas que pueden interesarle, ya que también es útil en otras partes de LaTeX. El problema aquí es que \mu
tiene un descendente, mientras FA
que no. Puede obtener un cuadro que tenga "todas las alturas" asociadas con letras altas y descendentes, pero sin ancho a través de \strut
, por lo que:
F(\mu F) & FA\strut \\
\mu F & A\strut
El resto del documento puede permanecer exactamente igual. Si se siente paranoico, puede agregar \strut
correos electrónicos a las otras celdas, así como prepararlas para el futuro en caso de que cambie su contenido más adelante.
De manera más general, puede usarlo \vphantom
para cuadros sin ancho con los mismos parámetros de altura y profundidad que otro cuadro determinado y \hphantom
para cuadros sin alto con el mismo ancho que otro cuadro determinado. Entonces la versión verdaderamente paranoica sería
F(\mu F)\vphantom{FA} & FA\vphantom{F(\mu F)} \\
\mu F\vphantom{A} & A\vphantom{\mu F}
lo que garantizaría que tuviera la misma altura y profundidad en todas las columnas de cada fila. (También tendría la ventaja \strut
de que es "mínimo" con respecto a la altura y la profundidad; por ejemplo, si nada en una fila determinada tuviera descendientes, agregar un \strut
en todas partes le daría profundidad, pero usarlo \vphantom
como se indicó anteriormente no.)