tikz-cd 中的标签和箭头问题

tikz-cd 中的标签和箭头问题

我对 tikz-cd 包和箭头上的标签有问题

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}
%
\usepackage{tikz}
\usetikzlibrary{cd}
%
\begin{document}
\begin{tikzcd}[column sep=tiny]
&\mathbb{S}ig^I\arrow[dl,phantom , shift left]\arrow[dl, "\left(Mod^{I}\right)^{op}" above, shift right] \arrow[dr, "Sen^{I}"] &\\
\mathbb{C}at^{op}&\models &\mathbb{S}et
\end{tikzcd}
\end{document}

这是问题所在(左边的箭头是问题所在) 在此处输入图片描述 谢谢你的帮助。

答案1

我觉得这很好。添加了above leftabove right,并删除了不必要的\left...\right构造

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}
%
\usepackage{tikz}
\usetikzlibrary{cd}
%
\begin{document}
\begin{tikzcd}[column sep=tiny]
&\mathbb{S}ig^I
\arrow[dl,phantom , shift left]
\arrow[dl, "(Mod^{I})^{op}" above left] 
\arrow[dr, "Sen^{I}",above right] &\\
\mathbb{C}at^{op}&\models &\mathbb{S}et
\end{tikzcd}
\end{document}

在此处输入图片描述

答案2

还有一些技巧:以这种方式使用数学斜体会导致不太好的输出。我永远不会对第一个字母使用黑板粗体,但使用个人命令可以轻松更改排版所有的只需修改定义即可修改文档。

两个标签的垂直对齐是通过使用\mathstrut右侧的标签来实现的,它添加了“幻影括号”。

\op类似地,通过在右下方的条目中添加幻影,箭头具有大致相同的角度。

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}

\usepackage{tikz-cd}

\newcommand\cat[1]{\makecat#1\makecat}
\def\makecat#1#2\makecat{\mathbb{#1}\mathrm{#2}}
\newcommand{\fun}[1]{\mathrm{#1}}
\newcommand{\op}{^{\mathrm{op}}}

\begin{document}

\begin{tikzcd}[column sep=0em]
& \cat{Sig}^I
  \arrow[dl, swap, "(\fun{Mod}^{I})\op"]
  \arrow[dr, "\mathstrut\fun{Sen}^{I}"]
\\
\cat{Cat}\op & \models & \cat{Set}\hphantom{\op}
\end{tikzcd}

\end{document}

在此处输入图片描述

\cat\fun;-)

答案3

我尝试使用 TikZ。

在此处输入图片描述

\documentclass[tikz,border=2mm]{standalone}
\usepackage{amssymb}
\begin{document}
\begin{tikzpicture}
\def\a{2}
\path 
(0,0)      node (Si) {$\mathbb{S}ig^I$}
+(-135:\a) node (Ca) {$\mathbb{C}at^{op}$} 
+(-45:\a)  node (Se) {$\mathbb{S}et$}
(Si|-Ca)   node{$\models$};

\draw (Si)--(Ca) node[pos=.4,left]{$(Mod^{I})^{op}$};
\draw (Si)--(Se) node[pos=.4,right=1mm]{$Sen^{I}$};
\end{tikzpicture}
\end{document}

相关内容