带箭头的方程式中的注释

带箭头的方程式中的注释

在进行大型计算时,对读者来说,对所进行的操作做出很好的注释通常非常有帮助。此外,方程式中的其他注释也会有很大帮助,例如这个

在此处输入图片描述

我更喜欢这个,而不是 ^ 约定。我使用以下代码生成上述内容

\vertarrowbox{e_j}{$i$\textsuperscript{th} spot}

在哪里

\newcommand\vertarrowbox[3][2ex]{%
    \begin{array}[t]{@{}c@{}} #2 \\[-0.7ex]
        \left\uparrow\vcenter{\hrule height #1}\right.\kern-\nulldelimiterspace\\[-1.2ex]
        \makebox[0pt]{\scriptsize#3}
    \end{array}%
}

我现在的目标是实现类似的目标。我正在寻找类似的东西

在此处输入图片描述

表示两个变量交换后得到一个减号。

我不知道如何实现这一点。我不确定 tikz-cd 是否可行(我没有在类似这样的方程中使用 tikz-cd 的经验,也不知道是否可以这样使用它)。

感谢您的想法!

答案1

在@daleif给我提供使用 tikz 和 tikzmark 的提示后,我通过反复试验找到了如何做到这一点的方法(tikz 看起来非常复杂和强大)。纠正或改进这个解决方案(我不完全了解每一条评论,以及是否可以做得更好或者我在这里做了一些非常愚蠢的事情)。

\usepackage{tikz}
\usetikzlibrary{tikzmark}

\begin{equation*}
    f(\tikzmarknode{a}a,b,c,d,\tikzmarknode{e}e) = -f(e,b,c,d,a)
\end{equation*}

\begin{tikzpicture}[overlay,remember picture]
    \draw [>=latex,<->]
    (a.south) to[out=-90,in=-90,looseness=1] node [below,sloped] (TextNode1) 
    {\scriptsize$\cdot (-1)$} (e.south);
\end{tikzpicture}

产量

在此处输入图片描述

然而仍存在两个问题:

  1. 我想在对齐环境中应用它。但间距却乱了:

     \begin{align*}
          f(a,b,c,d,e) &= f(\tikzmarknode{a}a,b,c,d,\tikzmarknode{e}e) \\
                       &= -f(e,b,c,d,a)
     \end{align*}
    

在此处输入图片描述

  1. 由于我将在文档中经常使用它,因此我想为其编写一个命令。但我该如何实现呢?显而易见的问题是 \begin{tikzpicture}[overlay,remember picture] 必须整个对齐环境,我只使用过“就地替换”的命令。

很感谢任何形式的帮助!

编辑:我在下面添加了一个括号,以便更好地表示到底移动了哪个术语。还请阅读我在此答案下的评论。 在此处输入图片描述

相关内容