4

I have the following diagram where I am using the \tikzcdmatrixname command to place the commutativity arrow, and using the "at end of picture" trick, but the arrow is not showing up. These tricks come from this other question. I'm not sure what is happening... How can I get the arrow centred in the middle of the diagram? MWE below.

enter image description here

    \documentclass[tikz,border=5mm]{standalone}
\usepackage{tikz-cd}

\begin{document} \begin{tikzcd}[execute at end picture=% { \arrow[to path={(\tikzcdmatrixname-1-3) node[midway,scale=1.5] {$\circlearrowleft$}(\tikzcdmatrixname-3-3)}]; }] && {\pi_1(A_{\alpha})} \ {\pi_1((A_{\alpha} \cap A_{\beta})} &&&& {\pi_1(X)} \ && {\pi_1(A_{\beta})} \arrow["{(I_{\alpha \beta})*}", hook, from=2-1, to=1-3] \arrow["{(I{\beta \alpha})_*}"', hook, from=2-1, to=3-3] \arrow[hook, from=1-3, to=2-5] \arrow[hook, from=3-3, to=2-5] \end{tikzcd} \end{document}

2 Answers2

5

I think, this is what you're after:

\documentclass[tikz,border=5mm]{standalone}
\usepackage{tikz-cd, mathabx}

\begin{document} \begin{tikzcd}[execute at end picture={ \path(\tikzcdmatrixname-1-3) -- (\tikzcdmatrixname-3-3) node[midway,scale=1.5] {$\circlearrowleft$}; }] & & {\pi_1(A_{\alpha})} & & \ {\pi_1((A_{\alpha} \cap A_{\beta})} & & & & {\pi_1(X)} \ & & {\pi_1(A_{\beta})} & & \arrow["{(I_{\alpha \beta})*}", hook, from=2-1, to=1-3] \arrow["{(I{\beta \alpha})_*}"', hook, from=2-1, to=3-3] \arrow[hook, from=1-3, to=2-5] \arrow[hook, from=3-3, to=2-5] \end{tikzcd} \end{document}

enter image description here

3

It is not clear how arrow in middle of diagram look. Is this vertical straight arrow or is arc as guess @Jasper Habicht in his answer.

For both case the code can be much simpler as OP's MWE:

\documentclass[tikz,border=5mm]{standalone}
\usepackage{tikz-cd}
\usetikzlibrary{arrows.meta,
                bending}
\tikzset{C/.style={circle, minimum size=8mm,
                   node contents={},
                   append after command={\pgfextra{%
        \draw[-{Straight Barb[flex']}](\tikzlastnode.150) arc (150:450:4mm);}
                }}
        }

\begin{document} \begin{tikzcd} & \pi_1(A_{\alpha}) \ar[dr, hook] \ar[dd,shorten >=3mm, shorten <=3mm]
& \ \pi_1(A_{\alpha} \cap A_{\beta}) \ar[ru, "{(I_{\beta\alpha})*}", hook] \ar[rd, "{(I{\alpha\beta})*}"', hook] & & \pi_1(A{\beta}) \ & \pi_1(A_{\beta}) \ar[ur, hook] & \end{tikzcd}

\begin{tikzcd}
&amp;   \pi_1(A_{\alpha}) 
    \ar[dr, hook, &quot;&quot;name=U]
                    &amp;                       \\

\pi_1(A_{\alpha} \cap A_{\beta}) \ar[ru, "{(I_{\beta\alpha})*}", hook] \ar[rd, "{(I{\alpha\beta})*}"', hook,""name=D] \ar[to path={(U) node[pos=.6,xshift=1.5em,C] (D)}] {} & & \pi_1(A{\beta}) \ & \pi_1(A_{\beta}) \ar[ur, hook] &
\end{tikzcd} \end{document}

enter image description here

Zarko
  • 296,517