
포럼에서 조금 검색했는데 내 문제에 대한 만족스러운 해결책을 찾을 수 없습니다.
두 가지 다른 상황을 비교하는 표 형식을 만들고 싶습니다. 비교 라인은 배열/행렬입니다. 모든 것이 너무 빡빡하기 때문에 표 형식의 간격을 조금 더 크게 만들고 싶습니다. 그래서 나는 \arraystretch
그룹 내 에서 변경을 사용합니다 .
\begin{center}
\renewcommand*{\arraystretch}{1.5}
\begin{tabular}{|c|c|}
\hline
Problem (1) & Problem (2)\\
\hline
\begingroup
\renewcommand*{\arraystretch}{1}
$\left\{
\begin{array}{c}
G_1 = 1\\
G_2 = 0
\end{array}
\right.$
\endgroup
&
\begingroup
\renewcommand*{\arraystretch}{1}
$\left\{
\begin{array}{c}
G_1 = 0\\
G_2 = 1
\end{array}
\right.$
\endgroup
\\
\hline
displacement $u_1(x,y) = \chi_1(y)$ & displacement $u_1(x,y) = \chi_2(y)$\\
\hline
\end{tabular}
\end{center}
텍스트 줄에는 잘 작동하지만 내부의 배열/행렬을 사용하면 상단과 하단에 추가 공간을 두지 않습니다. 이는 예상했던 것과 다릅니다. 하지만 \arraystretch
오버 를 늘리면 3
어레이 상단에 공간이 표시되고, 늘리면 4
하단에 공간이 나타나는 것을 볼 수 있습니다.
배열이 공간으로 둘러싸여 있어야 한다는 것을 LaTeX에서 이해하도록 하는 방법을 아는 사람이 있습니까?
\arraystretch
추가 질문: (over ) 에 큰 숫자가 있으면 4
수직 정렬이 중앙에 있지 않고 아래쪽에 약간 있는 것 같습니다. use tabularx
, minipages 등 이외의 옵션이 있습니까 ?
답변1
실제로 값을 변경할 필요는 없습니다 \arraystretch
. 패키지 makecell
는 행에 약간의 수직 패딩을 제공할 수 있습니다. 또한 시조 명령을 사용하여 다양한 두께의 규칙과 셀 내부의 줄 바꿈을 사용할 수 있습니다. 공식의 경우 cases
환경을 사용하는 것이 더 간단합니다.
booktabs 규칙 명령 사용에 대한 @Mico의 의견에 동의하며 수직 규칙은 없습니다. 수직 규칙을 사용하는 경우 이러한 테이블을 (내 취향에 맞게!) 개선할 수 있는 방법을 보여 드리겠습니다.
\documentclass{article}
\usepackage{array, booktabs}
\usepackage{makecell}
\setcellgapes{3pt}
\usepackage{mathtools}
\begin{document}
\begin{center}
\makegapedcells
\begin{tabular}{!{\vrule width 1pt}c|c!{\vrule width 1pt}}
\Xhline{1pt}
Problem (1) & Problem (2) \\
\hline
$ \begin{cases}
G_1 = 1\\
G_2 = 0
\end{cases}$
&
$ \begin{cases}
G_1 = 0\\
G_2 = 1
\end{cases} $
\\
\hline
\makecell{displacement \\$u_1(x,y) = \chi_1(y)$} & \makecell{displacement \\ $u_1(x,y) = \chi_2(y)$}\\
\Xhline{1pt}
\end{tabular}
\end{center}
\vskip1cm
\begin{center}
\makegapedcells
\begin{tabular}{@{}cc@{}}
\toprule
Problem (1) & Problem (2) \\
\cmidrule(lr){1-1}\cmidrule(lr){2-2}
$ \begin{dcases}
G_1 = 1\\
G_2 = 0
\end{dcases}$
&
$ \begin{cases}
G_1 = 0\\
G_2 = 1
\end{cases} $
\\
\addlinespace
displacement $u_1(x,y) = \chi_1(y)$ & displacement $u_1(x,y) = \chi_2(y)$ \\
\bottomrule
\end{tabular}
\end{center}
\end{document}
답변2
다양한 의 위와 아래의 간격을 파악하는 데 시간을 소비하는 대신 \hline
간단히 내부 수평선(및 모든 수직선)을 제거하고 다음의 선 그리기 매크로를 사용할 수 있습니다.책꽂이위쪽과 아래쪽 선을 그리는 패키지입니다. 물론 \renewcommand{\arraystretch}{1.5}
원할 경우 해당 지침을 계속 사용할 수 있습니다.
나는 당신이 이 레이아웃이적어도수직선과 수평선이 더 많은 것만큼 읽기 쉽습니다.
\documentclass{article}
\usepackage{amsmath} % for 'cases' environment
\usepackage{booktabs} % for \toprule, \bottomrule, and \addlinespace macros
\begin{document}
\begin{center}
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{@{}cc@{}}
\toprule
Problem (1) & Problem (2) \\ \addlinespace
$\begin{cases}
G_1 = 1\\G_2 = 0
\end{cases}$
&
$\begin{cases}
G_1 = 0\\G_2 = 1
\end{cases}$ \\ \addlinespace
displacement $u_1(x,y) = \chi_1(y)$ &
displacement $u_1(x,y) = \chi_2(y)$ \\
\bottomrule
\end{tabular}
\end{center}
\end{document}