我只是想在一些交换图的右侧放置一些标签,以便以后引用它们。由于我不需要标记所有图表,因为我只需要引用其中两个,所以我更喜欢符号而不是数字。无论如何,我能得到的最接近的方法是输入
\begin{equation} \label{tre}
\begin{center}
\begin{tikzcd}
S^n(X'') \arrow{d}{S^n(h'')} \arrow{r}{\delta^n_E} & S^{n+1}(X') \arrow{d}{S^{n+1}(h')} \\
S^n(Y'') \arrow{r}{\delta^n_F} & S^{n+1}(Y')
\end{tikzcd}
\end{center} \tag{\bullet}
\end{equation}
现在,除了我收到几个警告(例如“Package amsmath 错误:\tag 不允许在这里”)之外,这只会在我的图表的左下角显示标签“(1.1)”(而我希望任何标签都位于右侧而不是下方的行上)。更奇怪的是,如果我删除“center”环境,那么 Overleaf 就不会编译。
我真的很困惑。有人能帮帮我吗?
答案1
这不是交换图或与 相关的任何问题tikz
。这只是一个标签问题,可以用amsmath
或解决mathtools
。后者提供了一个命令来保留等式中的标签。以下是一个例子:
\documentclass{article}
\usepackage{mathtools}
\usepackage{tikz-cd}
\begin{document}
\begin{equation*}
xyz \label{blah}\tag*{$\bullet$}
\end{equation*}
The equation~\refeq{blah} is easy
\begin{equation*}
\begin{tikzcd}
A\ar{r}{f}\ar{d}[swap]{g} & B\ar{d}{h}\\
C\ar{r}[swap]{k} & D
\end{tikzcd}
\label{foo}\tag*{\&}
\end{equation*}
\textit{The diagram~\ref{foo} is commutative} vs. \textit{The diagram~\refeq{foo} is commutative}
\end{document}
答案2
首先:内部不允许有空行equation
,center
也不允许。的参数\tag
排版为文本,因此\bullet
会导致错误。
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz-cd}
\begin{document}
\begin{equation} \label{tre}
\begin{tikzcd}
S^n(X'') \arrow[d,"S^n(h'')"] \arrow[r,"\delta^n_E"] &
S^{n+1}(X') \arrow[d,"S^{n+1}(h')"] \\
S^n(Y'') \arrow[r,"\delta^n_F"] & S^{n+1}(Y')
\end{tikzcd}
\tag{\textbullet}
\end{equation}
\end{document}