想知道是否有人能帮助解决以下问题。
基本上,我需要在同一行中有 3 个公式及其对应的引用。对于 Precision 公式,我需要 (2),就像 Recall 公式中的 (1) 一样,对于 F1 公式也是如此。努力将 3 个公式放在同一行,下面是我能得到的最好结果,但仍然不正确。
请参阅下面我使用的代码:
\documentclass{article}
\usepackage{tabularx,amsmath}
\begin{document}
\noindent\begin{tabularx}{\textwidth}{@{}XXX@{}}
\begin{equation}
Recall = \frac{TP}{TP +FN}
\label{eqn:1}
\end{equation} &
\begin{equation}
Precision = \frac{TP}{TP + FP}
\label{eqn:2}
\end{equation} &
\begin{equation}
F1 = 2 * \frac{ Precision * Recall}{Precision + Recall}
\label{eqn:3}
\end{equation}
\end{tabularx}
\end{document}
任何帮助都将非常感激!
谢谢!
答案1
由于您没有说明字体(这会影响表达式的大小)或页面大小,因此很难具体说明如何使某些东西适应。
以下是使用默认字体和带有文章类别的默认美国信纸的几种可能性。
\documentclass{article}
\usepackage{array,amsmath}
\begin{document}
Small
{\small
\setlength\tabcolsep{0pt}
\noindent\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}
p{.29\textwidth}
p{.31\textwidth}
p{.4\textwidth}
@{}}
\begin{equation}
\mathrm{Recall} = \frac{\mathrm{TP}}{\mathrm{TP} {+}\mathrm{FN}}
\label{eqn:r}
\end{equation} &
\begin{equation}
\mathrm{Precision} = \frac{\mathrm{TP}}{\mathrm{TP} {+} \mathrm{FP}}
\label{eqn:p}
\end{equation} &
\begin{equation}
\mathrm{F1} = 2 * \frac{ \mathrm{Precision} {*} \mathrm{Recall}}{\mathrm{Precision} {+} \mathrm{Recall}}
\label{eqn:f}
\end{equation}
\end{tabular*}
}
Multline
\noindent\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}
p{.25\textwidth}
p{.27\textwidth}
p{.4\textwidth}
@{}}
\begin{multline}
\mathrm{Recall} =\\ \frac{\mathrm{TP}}{\mathrm{TP} +\mathrm{FN}}
\label{eqn:rr}
\end{multline} &
\begin{multline}
\mathrm{Precision} =\\ \frac{\mathrm{TP}}{\mathrm{TP} + \mathrm{FP}}
\label{eqn:pp}
\end{multline} &
\begin{multline}
\mathrm{F1} =\\ 2 * \frac{ \mathrm{Precision} * \mathrm{Recall}}{\mathrm{Precision} + \mathrm{Recall}}
\label{eqn:ff}
\end{multline}
\end{tabular*}
\end{document}
请注意,应避免对多字母单词使用默认数学斜体(它被设计成看起来像单字母变量的乘积),并且最好避免使用数字\label
我避免这样做tabularx
,因为我写它是因为默认情况下它使列宽相等,而在这里你想“用眼睛”调整列以适应表达式。
答案2
除非你减小它们的尺寸,否则你无法将这三个方程式放入标准线中。
这是利用所有可用空间的相当通用的方法。
\documentclass{article}
\usepackage{amsmath}
\usepackage{lipsum} % for context
\makeatletter
\newcommand{\manualequation}[3][]{%
% #1 = optional size command, #2 = label, #3 = equation
\mbox{%
#1%
$\displaystyle{#3}$\enspace\refstepcounter{equation}\ltx@label{#2}\thetag{\ref{#2}}%
}%
}
\makeatother
\begin{document}
\lipsum[2][1-5]
\begin{equation*}
\hspace{0pt}
\manualequation[\small]{eqn:1}{
\mathrm{Recall} = \frac{\mathit{TP}}{\mathit{TP} + \mathit{FN}}
}
\hspace{1000pt minus 1fill}
\manualequation[\small]{eqn:2}{
\mathrm{Precision} = \frac{\mathit{TP}}{\mathit{TP} + \mathit{FP}}
}
\hspace{1000pt minus 1fill}
\manualequation[\small]{eqn:3}{
F_1 = 2 \frac{\mathrm{Precision}\cdot\mathrm{Recall}}{\mathrm{Precision} + \mathrm{Recall}}
}
\end{equation*}
\lipsum[3][1-5]
\end{document}
诀窍是在左侧添加一些胶水,然后在中间插入非常大的胶水,但可以收缩以使块适合。