带垂直箭头的方程

带垂直箭头的方程

我如何得到这个带有垂直箭头的方程来帮助描述它的一些术语?

\begin{equation*}
0 \leq F = \underbrace{\sum\limits_{i=1}^{n}(y_i - \overline{y})^2}_{(n-1)s_y^2} 
- 2b \underbrace{\sum\limits_{i=1}^{n}(x_i - \overline{x})(y_i - \overline{y})}_{(n-1)s_{xy} = (n-1)rs_xs_y}
+b^2 \underbrace{\sum\limits_{i=1}^{n}(x_i - \overline{x})^2}_{(n-1)s_x^2}
\end{equation*}

enter image description here

答案1

该命令\uparrow制作一个可扩展的箭头。

\documentclass{article}
\usepackage{mathtools}

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

\begin{equation*}
0 \leq F = 
{\underbrace{\sum_{i=1}^{n}(y_i-\bar{y})^2}_{(n-1)s_y^2}}
-\vertarrowbox{2b}{text}
{\underbrace{{}\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})}_{(n-1)s_{xy} = (n-1)rs_xs_y}}
+\vertarrowbox{b^2}{More text}
{\underbrace{{}\sum_{i=1}^{n}(x_i-\bar{x})^2}_{(n-1)s_x^2}}
\end{equation*}

\begin{equation*}
0 \leq F = 
\sum_{i=1}^{n}(y_i-\bar{y})^2
-2b
\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})
+b^2
\sum_{i=1}^{n}(x_i-\bar{x})^2
\end{equation*}

\end{document} 

奇怪的括号很容易解释:\underbrace构成了一个 Op 原子,这与二元运算的间距相冲突,因此最好用括号括起来。但是,如果前面有一个普通符号,则应该出现一个细小的空格,这是由里面的\sum空子公式在必要时产生的。{}\underbrace

\underbrace第二个显示显示没有箭头的标准间距,只是为了检查间距是否相同。

\vertarrowbox一个可选参数,用于指定箭头所需的高度,默认为 6ex。调用它就像\vertarrowbox[12ex]{<symbol>}{<text>}您想要将高度加倍一样(其大小应取决于上下文)。

enter image description here

答案2

一种可能性是使用包tikz及其 tikzmark库:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{tikzmark}

\usepackage{lipsum}% for dummy text

\begin{document}
\lipsum*[11]
\[
0 \leq F =  \underbrace{\sum_{i=1}^{n}(y_i - \overline{y})^2}_{(n-1)s_y^2}
            - \tikzmark{A}2b
            \underbrace{\sum_{i=1}^{n}(x_i - \overline{x})(y_i - \overline{y})}_{(n-1)s_{xy} = (n-1)rs_xs_y}
            + \tikzmark{B}b^2
            \underbrace{\sum_{i=1}^{n}(x_i - \overline{x})^2}_{(n-1)s_x^2}
\begin{tikzpicture}[overlay, remember picture,shorten <=1mm,font=\footnotesize]
\draw[<-] ([xshift=1.0ex] pic cs:A) -- ++ (0,-1.2) node[below] {text};
\draw[<-] ([xshift=0.5ex] pic cs:B) -- ++ (0,-1.2) node[below] {text};
\end{tikzpicture}
\bigskip
\]
\lipsum*[12]
\end{document}

enter image description here

答案3

像这样?观察一下,解决方案设置了一个名为的宏\vertarrowbox,它接受两个参数:(a)要放置在等式主线上的内容,以及(b)要放置在长垂直箭头下方的文本。

enter image description here

\documentclass{article}
\usepackage{mathtools,graphicx}
\newcommand\vertarrowbox[2]{%
    \begin{array}[t]{@{}c@{}} #1 \\
    \rotatebox{90}{$\xrightarrow{\hphantom{abcdefgh}}$} \\[-1ex]
    \mathclap{\scriptstyle\text{#2}}%
    \end{array}}
\begin{document}
\begin{equation*}
0 \leq F = 
\underbrace{\sum_{i=1}^{n}(y_i-\bar{y})^2}%
       _{(n-1)s_y^2}  
{}-{}\vertarrowbox{2b}{text}
\underbrace{\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})}%
       _{(n-1)s_{xy} = (n-1)rs_xs_y} 
{}+{}\vertarrowbox{b^2}{More text}
\underbrace{\sum_{i=1}^{n}(x_i-\bar{x})^2}%
       _{(n-1)s_x^2}
\end{equation*}
\end{document} 

答案4

pstricks带有和 的简短代码auto-pst-pdf

\documentclass{article}
\usepackage{amsmath}
\usepackage{pst-node, auto-pst-pdf}

\begin{document}

\begin{postscript}
\begin{equation*}
0 \leq F = \underbrace{\sum\limits_{i=1}^{n}(y_i - \overline{y})^2}_{(n-1)s_y^2}
{}-\rnode{B}{2b} \underbrace{\sum\limits_{i=1}^{n}(x_i - \overline{x})(y_i - \overline{y})}_{(n-1)s_{xy} = (n-1)rs_xs_y}
{}+\rnode{b2}{b^2} \underbrace{\sum\limits_{i=1}^{n}(x_i - \overline{x})^2}_{(n-1)s_x^2}
 \end{equation*}
 \psset{arrowinset=0.12, arrows=->, nodesep=4pt}
\uput{12ex}[d](B){\rnode[t]{T1}{\textsf{Text}}}\ncline{T1}{B}
\uput{12ex}[d](b2){\rnode[t]{T2}{\textsf{Text}}}\ncline{T2}{b2}
 \end{postscript}

\end{document} 

enter image description here

相关内容