我见过这个https://stackoverflow.com/questions/2632628/left-align-block-of-equations答案以及其他一些答案,但没有一个能给出令人满意的解决方案。
问题
两个等式需要对齐,使得等号一个位于另一个之下,并且等号左侧的文本向左对齐。
我迄今为止尝试过
\documentclass[fleqn]
- 这永远不会将测试与左侧最后一个“&”符号的右侧对齐。\begin{flalign}
- 与上相同。\begin{tabular}{lll}
里面\beign{equation}
- 可以实现正确的布局,但是非常麻烦(我需要将所有公式包装在里面$$
,这使得引用变得困难。
例子
% Created 2015-01-10 Sat 16:22
\documentclass[fleqn]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fixltx2e}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage{float}
\usepackage{wrapfig}
\usepackage{rotating}
\usepackage[normalem]{ulem}
\usepackage{amsmath}
\usepackage{textcomp}
\usepackage{marvosym}
\usepackage{wasysym}
\usepackage{amssymb}
\usepackage{hyperref}
\tolerance=1000
\usepackage[utf8]{inputenc}
\author{wvxvw}
\date{\today}
\title{test}
\hypersetup{
pdfkeywords={},
pdfsubject={},
pdfcreator={Emacs 25.0.50.1 (Org mode 8.2.2)}}
\begin{document}
\maketitle
\tableofcontents
\section{Problem 1}
\label{sec-1}
\begin{align*}
U &=& \mathrm{Sp} \{ x^3 + 4x^2 - x + 3, x^3 + 5x^2 + 5, 3x^3 + 10x^2 + 5 \} & \\
W &=& \mathrm{Sp} \{ x^3 + 4x^2 + 6, x^3 + 2x^2 - x + 5, 2x^3 + 2x^2 - 3x + 9 \} &
\end{align*}
% Emacs 25.0.50.1 (Org mode 8.2.2)
\end{document}
我尝试移动&
到不同的位置,此示例仅显示一种组合。
答案1
您正在使用的语法eqnarray
来对齐关系。正确的语法是&=
。
如果您确实希望左侧对齐,则可以使用alignat
,但我认为它不会产生好的结果。
在示例中,我将仅保留必要的包(amsmath
)。
\documentclass[fleqn]{article}
\usepackage{amsmath}
\DeclareMathOperator{\Sp}{Sp}
\begin{document}
\section{Problem 1}
\label{sec-1}
Normal way is with the left hand side right aligned as follows
\begin{align*}{2}
U &= \Sp \{ x^3 + 4x^2 - x + 3, x^3 + 5x^2 + 5, 3x^3 + 10x^2 + 5 \} \\
W &= \Sp \{ x^3 + 4x^2 + 6, x^3 + 2x^2 - x + 5, 2x^3 + 2x^2 - 3x + 9 \}
\end{align*}
but if you want them left aligned, use \texttt{alignat}:
\begin{alignat*}{2}
&U &&= \Sp \{ x^3 + 4x^2 - x + 3, x^3 + 5x^2 + 5, 3x^3 + 10x^2 + 5 \} \\
&W &&= \Sp \{ x^3 + 4x^2 + 6, x^3 + 2x^2 - x + 5, 2x^3 + 2x^2 - 3x + 9 \}
\end{alignat*}
Choose your way, but be consistent in your document.
\end{document}
\Sp
请注意确保更好间距的定义。
答案2
两个建议:
由于您正在使用
align*
环境,因此使用&=
而不是&=&
来对齐符号上的方程式=
。当你这样做时,也请省略
&
每个等式末尾的尾随字符。\DeclareMathOperator{\Sp}{Sp}
在序言中(加载后)发出指令amsmath
;这将简化正文中的代码编写。
以下代码实现了这些想法,同时将代码减少到最低限度。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[fleqn]{amsmath}
\DeclareMathOperator{\Sp}{Sp}
\begin{document}
\begin{align*}
U &= \Sp \{ x^3 + 4x^2 - x + 3, x^3 + 5x^2 + 5, 3x^3 + 10x^2 + 5 \} \\
W &= \Sp \{ x^3 + 4x^2 + 6, x^3 + 2x^2 - x + 5, 2x^3 + 2x^2 - 3x + 9 \}
\end{align*}
\end{document}