在数学模式下标记事物的方法

在数学模式下标记事物的方法

我想在方程中标记权重函数,使用类似于的东西\underbrace。使用这段代码:

(x^2y')' + \lambda \underbrace{x^2}_{\text{Weight function}}y = 0

我明白了

方程

我不希望方程式的其他部分之间有这么大的空间。例如,我不介意有一个向下的箭头,并在那里写下描述。有什么方法可以实现我所描述的吗?

答案1

在这里,我尝试了不同的突出显示方式,而无需借助任何(主要的)附加软件包。有更优雅的方法(使用tikz, 例如):

突出显示数学元素的不同方法

\documentclass{article}
\usepackage{grahpicx}% http://ctan.org/pkg/graphicx
\usepackage{amsmath}% http://ctan.org/pkg/amsmath
\begin{document}
\[
  (x^2y')' + \lambda \underbrace{x^2}_{\text{\makebox[0pt]{Weight function}}}y = 0
\]

\[
  (x^2y')' + \lambda \mathop{\rlap{\resizebox{1em}{\ht\strutbox}{$\underbrace{\phantom{x^2}}$}}x^2}_{\text{\makebox[0pt]{Weight function}}}y = 0
\]

\[
  (x^2y')' + \lambda
  \begin{array}[t]{@{\,}c@{\,}}
    x^2 \\ \downarrow \\ \makebox[0pt]{\scriptsize Weight function}
  \end{array}
  y = 0 
\]

\[
  (x^2y')' + \lambda
  \begin{array}[t]{@{}c@{}}
    \setlength{\fboxsep}{1pt}
    \fbox{$x^2$} \\ \downarrow \\ \makebox[0pt]{\scriptsize Weight function}
  \end{array}
  y = 0 
\]

\[
  (x^2y')' + \lambda \underset{\text{\makebox[0pt]{Weight function}}}{\underset{\downarrow}{x^2}}  y = 0 
\]
\end{document}

选项 1 相当基础。选项 2 使用适当的 来设置伪造\underbrace,但将其大小调整为 的宽度1em,然后将表达式的其余部分排版为\mathop。选项 3 和 4 使用array来堆叠符号。选项 5 使用堆叠的\underset

答案2

mathtools包提供了命令\mathclap,可以用来给出

截屏

\documentclass{article}

\usepackage{mathtools}

\begin{document}
\[
    (x^2y')' + \lambda \underbrace{x^2}_{\mathclap{\text{Weight function}}}y = 0
\]
\end{document}

答案3

这是一个简单的方法:

\let\hw\hidewidth
$$
  (x^2y')'+\lambda \underbrace{\mathop{x^2}}_{\hw\fam0 Weight~function\hw} y = 0
$$
\bye

在此处输入图片描述

相关内容