
Я использовал следующий код в LaTeX -
\documentclass{article}
\usepackage{amssymb,amsmath}
\begin{document}
\begin{table}[H]
\centering
\begin{tabular}{c|c}
\hline
{ $X=y+z$} & {
\parbox[c]{0.75\columnwidth}{
$C_L = \begin{cases}
min\left[\left(Re\right),\: f(B)\right]\:;\: A<4\\
f(E)\:;\:4\le E<10\\
-0.29\:;\: E\ge10
\end{cases}$\\
$f(E) = E^{3}-0.0159E^{2}-0.0204E+0.474$\\
}
}\tabularnewline \hline
\end{tabular}
\end{table}
\end{document}
В выводе я хотел бы, чтобы знаки равенства C_L
и f(E)
были выровнены друг с другом. Я пробовал использовать align
environment, но это не работает. Может кто-нибудь помочь?
решение1
Вы можете сдвинуть cases
содержимое вправо на ту же величину, что и при f(E)
использовании
$\phantom{f(E)}\llap{$C_L$} = \begin{cases}
%...
Смещение создает выровненный по правому краю блок нулевой ширины, чтобы не l
влиять на интервал.lap
C_L
P.S. Возможно, вам захочется использовать математический режим \min
вместо простого ввода текста .min
решение2
Вы можете использовать align
среду, которая предоставляется пакетом amsmath
. Я вижу, что вы загружаете ее в любом случае:
\documentclass{article}
\usepackage{amssymb,amsmath}
\begin{document}
\begin{table}[H]
\centering
\begin{tabular}{c|c}
\hline
{ $X=y+z$} & {
\parbox[c]{0.75\columnwidth}{
\begin{align}
C_L&= \begin{cases}
min\left[\left(Re\right),\: f(B)\right]\:;\: A<4\\
f(E)\:;\:4\le E<10\\
-0.29\:;\: E\ge10
\end{cases}\\
f(E)&= E^{3}-0.0159E^{2}-0.0204E+0.474
\end{align}
}
}\tabularnewline \hline
\end{tabular}
\end{table}
\end{document}
Амперсанды перед знаками равенства задают символы, которые необходимо выровнять, то есть, если вы используете их в другом месте, то следующий за ними символ будет выровнен.
А вот вывод кода:
решение3
Использование aligned
окружающей среды кажется мне самым простым решением:
\documentclass{article}
\usepackage{amssymb,amsmath}
\begin{document}
\begin{table}[H]
\centering
\begin{tabular}{c|c}
\hline
{ $X=y+z$} & {
\parbox[c]{0.75\columnwidth}{
\( \begin{aligned}
C_L&= \begin{cases}
min\left[\left(Re\right),\: f(B)\right]\:;\: A<4\\
f(E)\:;\:4\le E<10\\
-0.29\:;\: E\ge10
\end{cases}\\
f(E)&= E^{3}-0.0159E^{2}-0.0204E+0.474
\end{aligned} \)
}
}\tabularnewline \hline
\end{tabular}
\end{table}
\end{document}
Обратите внимание на две вещи:
- в пределах
\parbox
средыaligned
необходимо явно перевести ее в математический режим; - в исходном примере внизу было больше места, чем вверху; это было вызвано лишним символом
\\
после последней строки, который здесь удален.
решение4
Это просто комментарий к предложению Барбары (ответ позволяет улучшить форматирование). Вместо внутренних случаев я бы использовал alignedat
для того, чтобы также выровнять условия внутриcases
\left\{
\begin{alignedat}{2}
&\min[(Re),\: f(B)]\:;&\quad A&<4\\
&f(E)\:; &4&\le E<10\\
&-0.29\:; &E&\ge10
\end{alignedat}
\right.
Также я удалил \left...\right
конструкции изнутри, \min
так как они ничего не давали.
Редактировать: Добавлены визуальные эффекты