方程式表,类似图表列表

方程式表,类似图表列表

我对此还不太熟悉,想把一个包含我使用的方程式的简要描述的表格放入我的论文中。事实证明这是一个相当令人恼火的问题。我在网上找到了一个很好的简洁解决方案(http://www.latex-community.org/forum/viewtopic.php?f=5&t=428) 非常有用(感谢 gmedina)。解决方案使用 tocloft 包来定义新列表。

我现在遇到的问题是,随着方程编号变长,文本描述和方程编号会重叠,有人能帮我解决这个问题吗?此外,如果有人能清楚地解释命令,那将非常有帮助。下面是我使用 texmaker 和 Miktex 的 MWE。

 %%Preamble
 \documentclass[12pt]{report}
 \usepackage[utf8]{inputenc}
 \usepackage[T1]{fontenc}
 \usepackage{tocloft}
 \usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry}
 \usepackage[pdftex]{graphicx}
 \usepackage[english]{babel}

 %%gmedina solution
 \newcommand{\listequationsname}{List of Equations}
 \newlistof{myequations}{equ}{\listequationsname}
 \newcommand{\myequations}[1]{%
 \addcontentsline{equ}{myequations}{\protect\numberline{\theequation}#1}\par}

\begin{document}

\listofmyequations

\chapter{sums}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.1}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.2}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.3}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.4}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.5}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.6}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.7}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.8}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.9}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.10}
\myequations{sum}

\end{document}

答案1

tocloft规定\cft<set>numwidth了与条目关联的数字的宽度<set>。 在您的例子中<set>myequations,因此我们可以\cftmyequationsnumwidth按以下方式进行调整:

在此处输入图片描述

\documentclass[12pt]{report}
\usepackage{tocloft}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry}

%%gmedina solution
\newcommand{\listequationsname}{List of Equations}
\newlistof{myequations}{equ}{\listequationsname}
\newcommand{\myequations}[1]{%
\addcontentsline{equ}{myequations}{\protect\numberline{\theequation}#1}\par}
\setlength{\cftmyequationsnumwidth}{2.5em}% Width of equation number in List of Equations

\begin{document}

\listofmyequations

\chapter{sums}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.1}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.2}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.3}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.4}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.5}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.6}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.7}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.8}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.9}
\myequations{sum}

\begin{equation}
    1 + 1 = 2
\end{equation}
\label{eq:2.10}
\myequations{sum}

\end{document}

我使用了2.5em,其中默认值通常是1.5em

答案2

我扩展了前面的答案来定义一个您可以像这样使用的命令:

\noteworthy{a^2 + b^2 = c^2}{Pythagorean theorem} 

而且它会自动标记、引用、框出和列出我认为值得注意的方程式。我对结果非常满意。

请注意,红色方块仅突出显示超链接,它们在 pdf 上不可见。

在此处输入图片描述

然后对方程式进行编号、框选、标记文字(与方程式列表相匹配),并贴上标签以便我们引用它。

在此处输入图片描述

最小可行示例:

\documentclass{article}
\usepackage{tocloft}    % for list of equations
\usepackage{ragged2e}   % to undo \centering
\usepackage{hyperref}   % to make references hyperlinks
\usepackage{glossaries} 

% define list of equations
\newcommand{\listequationsname}{\Large{List of Equations}}
\newlistof{myequations}{equ}{\listequationsname}
\newcommand{\myequations}[1]{
   \addcontentsline{equ}{myequations}{\protect\numberline{\theequation}#1}
}
\setlength{\cftmyequationsnumwidth}{2.3em}
\setlength{\cftmyequationsindent}{1.5em}

% command to box, label, reference, and 
% include noteworthy equation in list of equations
\newcommand{\noteworthy}[2]{
\begin{align} \label{#2} \ensuremath{\boxed{#1}} \end{align} 
\myequations{#2} \centering \small \textit{#2} \normalsize \justify }

\begin{document}

\listofmyequations \pagebreak

\noteworthy{P(\bigcup_{n=1}^n A_n) \leq \sum_{n=1}^n P(A_n)}{Boole's inequality}

Where the events $A_n$ are disjoint, then the inequality 
in equation \ref{Boole's inequality} becomes an equality.

\end{document}

演示:https://www.overleaf.com/read/vftqrxghqchv

答案3

如果你不介意使用电子工具箱,其提供:

\AfterEndEnvironment{〈environment〉}{〈code〉}

在持有环境的组关闭之后,将任意〈code〉附加到由 \endcommand 在很晚的时间点执行的钩子上。

然后你可以把

\AfterEndEnvironment{equation}{\myequations{}}

在您的序言中,每次您使用方程式环境(并且仅使用方程式环境,因此对于对齐等,您需要复制上述内容并使用对齐而不是方程式)时,它都会将所述环境的使用添加到由其他答案生成的列表中。

这也意味着带星号的环境变体将不会出现在列表中。

相关内容