使用 tikzcd 制作带有圆形箭头的交换图

使用 tikzcd 制作带有圆形箭头的交换图

我想知道如何制作以下通勤图

在此处输入图片描述

仅使用 tikzcd。我构建了没有圆形箭头的图表;您可以在下面找到代码。但是,我不知道如何在图表中插入这些箭头。我也有兴趣在未来重现这种图表,所以我真的很感激那些可以让我将这种类型的节点插入其他图表的答案。

提前感谢您的回答。

\documentclass[11pt,a4paper,twoside,leqno]{article}

\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

\usepackage[left=2cm,right=2cm,top=2.5cm,bottom=2.5cm]{geometry}
\usepackage{blindtext}
\usepackage[nottoc,numbib]{tocbibind}
\usepackage{amsmath}
\usepackage{float}
\usepackage{booktabs}
\usepackage{amsfonts}
\usepackage{xcolor}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{mathtools}
\usepackage{tikz-cd}
\usepackage[cal=euler,scr=boondox]{mathalpha}
\usepackage{cite}
\usepackage{graphicx}
\usepackage{fancyhdr}
\usepackage{tikz-cd}
\usepackage{centernot}
\usepackage{stmaryrd}
\usepackage{bm}
\usepackage[shortlabels]{enumitem}
\usepackage{scalerel}
\usepackage{tikz}
\usetikzlibrary{babel}
\usetikzlibrary{shadows,arrows,positioning,shapes.geometric}
\usetikzlibrary{decorations,decorations.markings}
\usetikzlibrary{3d}
\usepackage{pgfplots}
\usetikzlibrary{intersections, pgfplots.fillbetween}
\usetikzlibrary {arrows.meta}

\usepackage{etoolbox}
\usetikzlibrary{optics}
\usepackage{pgf,tikz}
\usetikzlibrary{arrows}
\begin{document}
    \begin{center}
    \begin{tikzcd}
        (\widetilde U,G,\varphi)&(\widetilde W,K,\xi)\arrow[l]\arrow[r]&(\widetilde V,H,\psi)\\
        (\widetilde U_x,G_x,\varphi_x)\arrow[u]&(\widetilde W_z,K_z,\xi_z)\arrow[l,dashed]\arrow[ul,dashed,name=U,"\lambda_{\widetilde U}"]\arrow[u]\arrow[ur,dashed,"\lambda_{\widetilde V}"']\arrow[r,dashed]&(\widetilde V_y,H_y,\psi_y)\arrow[u]
    \end{tikzcd}
\end{center}
\end{document}

答案1

可以使用幻影箭头来完成,如下所示:

\documentclass[11pt,a4paper,twoside,leqno]{article}

\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

\usepackage[left=2cm,right=2cm,top=2.5cm,bottom=2.5cm]{geometry}
\usepackage{blindtext}
\usepackage[nottoc,numbib]{tocbibind}
\usepackage{amsmath}
\usepackage{float}
\usepackage{booktabs}
\usepackage{amsfonts}
\usepackage{xcolor}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{mathtools}
\usepackage{tikz-cd}
\usepackage[cal=euler,scr=boondox]{mathalpha}
\usepackage{cite}
\usepackage{graphicx}
\usepackage{fancyhdr}
\usepackage{tikz-cd}
\usepackage{centernot}
\usepackage{stmaryrd}
\usepackage{bm}
\usepackage[shortlabels]{enumitem}
\usepackage{scalerel}
\usepackage{tikz}
\usetikzlibrary{babel}
\usetikzlibrary{shadows,arrows,positioning,shapes.geometric}
\usetikzlibrary{decorations,decorations.markings}
\usetikzlibrary{3d}
\usepackage{pgfplots}
\usetikzlibrary{intersections, pgfplots.fillbetween}
\usetikzlibrary {arrows.meta}

\usepackage{etoolbox}
\usetikzlibrary{optics}
\usepackage{pgf,tikz}
\usetikzlibrary{arrows}

\begin{document}

    \begin{center}
    \begin{tikzcd}
        (\widetilde U,G,\varphi)&(\widetilde W,K,\xi)\arrow[l]\arrow[r]&(\widetilde V,H,\psi)\\
        (\widetilde U_x,G_x,\varphi_x)\arrow[u]\arrow[ur, phantom, "\scalebox{1.75}{$ \circlearrowleft $}", near end] &(\widetilde W_z,K_z,\xi_z)\arrow[l,dashed]\arrow[ul,dashed,name=U,"\lambda_{\widetilde U}"]\arrow[u]\arrow[ur,dashed,"\lambda_{\widetilde V}"']\arrow[r,dashed]&(\widetilde V_y,H_y,\psi_y)\arrow[u]\arrow[ul, phantom, "\scalebox{1.75}{$ \circlearrowright $}", near end]
    \end{tikzcd}
\end{center}

\end{document} 

在此处输入图片描述

相关内容