![将和号下的长数学文本分成不同的行?](https://linux22.com/image/235040/%E5%B0%86%E5%92%8C%E5%8F%B7%E4%B8%8B%E7%9A%84%E9%95%BF%E6%95%B0%E5%AD%A6%E6%96%87%E6%9C%AC%E5%88%86%E6%88%90%E4%B8%8D%E5%90%8C%E7%9A%84%E8%A1%8C%EF%BC%9F.png)
我有以下等式,其中和符号下有很多东西:
\begin{equation}
d(\vec{x},\vec{y})=
\sum_{Z_{xy}\in\vec{Z}_{xy},\forall x\in\vec{x},\forall y\in\vec{y}}
f(Z_{xy})
\end{equation}
在生成的文档中,我发现它有点难以阅读。有没有办法编写公式以使结果更易读,例如将求和符号下的内容放在不同的行上?
答案1
您可以使用包\substack
中的命令amsmath
,如下所示:
\begin{equation}
d(\vec{x},\vec{y}) =
\sum_{\substack{Z_{xy}\in\vec{Z}_{xy}\\
\forall x\in\vec{x}\\
\forall y\in\vec{y}}}
f(Z_{xy})
\end{equation}
然而,结果看起来仍然不太好,因为总和符号周围有额外的间距:
要解决这个问题,您可以使用包\mathclap
中的命令mathtools
,如下所示:
\begin{equation}
d(\vec{x},\vec{y}) =
\sum_{\mathclap{\substack{Z_{xy}\in\vec{Z}_{xy}\\
\forall x\in\vec{x}\\
\forall y\in\vec{y}}}}
f(Z_{xy})
\end{equation}
但也许你会乐意使用仅有的 \mathclap
,而不是\substack
。只要下标不是太宽,结果看起来就不错。
\begin{equation}
d(\vec{x},\vec{y}) =
\sum_{\mathclap{{Z_{xy}\in\vec{Z}_{xy},
\forall x\in\vec{x},
\forall y\in\vec{y}}}} f(Z_{xy})
\end{equation}
这mathtools
包裹还有其他几个用于排版数学的有用命令,包括更多用于改进下标和上标显示的命令。我非常建议看一下其文档。
答案2
尝试使用包\substack
中的命令amsmath
,其详细信息可以在这里找到这里