
Я хочу написать уравнение на латексе, подобное следующему.
Но я не могу полностью выровнять набор чисел с коэффициентами. Вот мой код:
\begin{equation}
\begin{aligned}
LNEP = & -0.23LNEER & +1.21LNCOST & +1.50LNFD & -1.03LNCP & -9.44 \\
& (0.12) & (0.13) & (0.27) & (0.37) & (1.33)
\end{aligned}
\end{equation}
Может ли кто-нибудь мне помочь, пожалуйста? Большое спасибо.
решение1
Вы можете использовать alignedat
.
\documentclass{article}
\usepackage{amsmath}
% Change the multiplication symbol to a centered dot.
\let\xtimes\times
\let\times\cdot
\begin{document}
\begin{equation}
\begin{alignedat}{5}
\mathrm{LNEP}
= -0&.23 \times \mathrm{LNEER} &{}
+ 1&.21 \times \mathrm{LNCOST} &{}
+ 1&.50 \times \mathrm{LNFD} &{}
- 1&.03 \times \mathrm{LNCP} &{}
- 9&.44 \\
(0&.12)&
(0&.13)&
(0&.27)&
(0&.37)&
(1&.33)
\end{alignedat}
\end{equation}
\end{document}
Пожалуйста, не вносите изменения в ваш код.
- Имена (если вам приходится использовать многобуквенные переменные) должны быть в формате
\mathrm
. - Я думаю, что неявное умножение выглядит запутанным с этими названиями, лучше использовать его явно.
- Между
{}
и&
или+
обеспечивается-
правильное расстояние вокруг операторов. - В отличие от вашего примера, я выровнял цифры по десятичной точке.
решение2
Вы забыли, что n точек выравнивания требуют 2n–1 амперсанд. Я предлагаю решение с alignedat{5}
, и другое, более простое, с stackengine
, которое не требует точек выравнивания:
\documentclass{article}
\usepackage{geometry}
\usepackage{mathtools}
\usepackage[usestackEOL]{stackengine}
\newcommand{\mystackunder}[2] {\stackMath\stackunder{#1}{\mathclap{#2}}}
\begin{document}
\begin{equation}
\begin{alignedat}[t]{5}
LNEP = -0.23&LNEER &{} +1.21 & LNCOST &{} +1.50 & LNFD &{} -1.03 & LNCP &{} -9.44 & \\
(0.12) & & (0.13) & & (0.27) & & (0.37) & & (1.33)
\end{alignedat}
\end{equation}
\bigskip
\begin{equation}%
LNEP = \mystackunder{-0.23}{(0.12)} LNEER +\mystackunder{1.21}{ (0.13)}LNCOST +\mystackunder{1.50}{(0.27)} LNFD -\mystackunder{1.03}{(0.37)} LNCP -\mystackunder{9.44}{(1.33)}
\end{equation}
\end{document}
решение3
Сохраняйте вместе коэффициент и точность. Это позволяет сделать скобки нулевой ширины. Между коэффициентом и переменной я добавил тонкий пробел для большей ясности.
\documentclass{article}
\usepackage{amsmath}
\newcommand{\cfac}[2]{% coefficient with accuracy
\begingroup\renewcommand{\arraystretch}{0.7}%
\begin{array}[t]{@{}r@{}}#1\\\makebox[0pt][r]{$($}#2\makebox[0pt][l]{$)$}\end{array}%
\endgroup
}
\newcommand{\tvar}[1]{\mathrm{#1}}
\begin{document}
\begin{equation}
\tvar{LNEP} =
\cfac{-0.23}{0.12}\,\tvar{LNEER} + \cfac{1.21}{0.13}\,\tvar{LNCOST} +
\cfac{1.50}{0.27}\,\tvar{LNFD} - \cfac{1.03}{0.37}\,\tvar{LNCP} - \cfac{9.44}{1.33}
\end{equation}
\end{document}