我有一系列长方程式,共 12 个,我想将它们格式化为表格。表格如下:
\begin{tabular}{L{1.7cm} | L{1.8cm} | C{12.2cm} R{1cm}}
\toprule
\textbf{Label 1} & \textbf{Label 2} & \textbf{Equations} \\
\midrule
.....
.....
\end{tabular}
\begin{equation} \end{equation}
最初,我在某些情况下对每个方程式使用和\begin{gather} \end{gather}
。这给了我每个方程式的编号和一个,\eqref{equation_label}
这对于文本引用非常方便。由于我无法在表格中使用这些包装器,我将它们分别切换为$equation$
,但是我失去了交叉引用的能力。我可以做得很差,添加第四列并手动添加数字,但我不想这样做,因为在大型文档中跟踪所有方程式编号是一件很麻烦的事情。
是否有人有一种半简单的方法来对每个方程式进行编号,以便在表内进行交叉引用?
编辑:
下面是我用两个较短的方程式所作的一个更好(更完整)的例子:
\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{booktabs}
\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\title{Your Paper}
\author{You}
\begin{document}
\begin{table}
\begin{tabular}{L{1.7cm} | L{1.8cm} | C{9cm}}
\toprule
\textbf{Label 1} & \textbf{Label 2} & \textbf{Equations} \\
\midrule
Col1Lbl1 & Col2Lbl1 &
$\rho_{X,Y}= \frac{cov(X,Y)}{\sigma_X\sigma_Y}= \frac{E[(X-\mu_X)(Y-\mu_Y)]}{\sigma_X\sigma_Y}$\\
~ & ~ & ~ \\
Col1Lbl12 & Col2Lbl2 &
$H(X) = - \sum_{i=1}^n p(x_i) log_b p(x_i)$
\end{tabular}
\end{table}
\end{document}
我希望将方程式参考编号添加到每个方程式的右边,并且能够在文中使用\ref{}
或\eqref{}
在文中引用特定方程式。
答案1
我必须承认,我完全不清楚你的“方程表”的前两列应该包含什么。你的文字似乎将它们称为“标签”,但这些标签一定与“常规”方程编号有所不同,对吗?
如果您的主要目标是将所有十二个方程式放在一页上,从页面顶部开始,同时仍然能够使用 LaTeX 的“正常”方程式编号系统进行交叉引用,那么您可以尝试这样的操作,它依赖于包afterpage
及其同名命令\afterpage
:
\usepackage{afterpage} % execute this command in the preamble
...
% later on, in the body of the document...
\afterpage{% defer execution of argument of `\afterpage to start of next page
% the following "dummy" table environment is optional
\begin{table}[t!]
\caption{My twelve beautiful equations} % I'm sure you can come up with a better name
\label{tab:twelve-equations}
\end{table}
\begin{equation}\label{eq:firstoftwelve}
...
\end{equation}
...
...
\begin{equation}\label{eq:lastoftwelve}
...
\end{equation} % end of final equation
%\clearpage %% optional, needed if you want no other material on this page
} % end of scope of \afterpage command
请注意,即使十二个方程式占用的空间超过一页纸的可用空间,这种方法仍然“有效”。如果它们无法容纳在一页纸上,则会调用 LaTeX 的常规分页算法。
答案2
我将继续回答我自己的问题。不过,我将为@Mico 的回答点赞,因为它让我找到了解决方案。
问题是,由于这样或那样的原因,我无法在表格中按如下格式格式化我的方程式:
Col1Lbl1 & Col2Lbl1 &
\begin{equation}\label{eq:firstoftwelve}
\rho_{X,Y}= \frac{cov(X,Y)}{\sigma_X\sigma_Y}= \frac{E[(X-\mu_X)(Y-\mu_Y)]}{\sigma_X\sigma_Y}
\end{equation}\\
相反我必须:
Col1Lbl1 & Col2Lbl1 &
\begin{equation}\label{eq:firstoftwelve}\rho_{X,Y}= \frac{cov(X,Y)}{\sigma_X\sigma_Y}= \frac{E[(X-\mu_X)(Y-\mu_Y)]}{\sigma_X\sigma_Y}\end{equation}\\
~ & ~ & ~ \\
请注意,后面没有换行符\begin{equation}
,我不知道为什么表格中的格式会有区别,但事实确实如此。