북탭을 사용하지 않고 테이블의 줄 간격

북탭을 사용하지 않고 테이블의 줄 간격

내가하려고하는 테이블에 문제가 있습니다. 현재 내가 가지고 있는 코드는 다음과 같습니다.

\documentclass[12pt,letterpaper,french]{extarticle}
\usepackage[margin=.75in]{geometry}

\renewcommand{\l}{\left}
\renewcommand{\r}{\right}
\renewcommand{\d}{\displaystyle}
\newcommand{\virg}{\:,\:}

\renewcommand{\arraystretch}{2}
\usepackage{multirow}

\begin{document}

\begin{center}
\begin{tabular}{cc|c|c|}
\cline{3-4}
 &  & \multicolumn{2}{c|}{Individu 1} \\ \cline{3-4} 
 &  & Colombe & Faucun \\ \hline
\multicolumn{1}{|c|}{\multirow{2}{*}{Individu 2}} & Colombe & \(\d\l(\frac{g}{2} \virg \frac{g}{2}\r)\) & \((g \virg 0)\) \\ \cline{2-4} 
\multicolumn{1}{|c|}{} & Faucon  & \((0 \virg g)\) & \(\d\l(\frac{g-c}{2} \virg \frac{g-c}{2}\r)\) \\ \hline
\end{tabular}
\end{center}

\end{document}

내가 원하는 결과는 분수가 포함된 테이블입니다. 그러나 선이 너무 좁고 분수가 선의 위쪽과 아래쪽에 닿습니다.

arraystretch를 2로 조정하려고 했지만( 를 사용하여 \renewcommand{\arraystretch}{2}) 텍스트 위에 공간만 추가하므로 셀에 있는 텍스트의 수직 중심이 엉망이 됩니다. 이 문제를 해결할 수 있는 방법이 있나요?

참고: 제가 그리는 테이블에는 수직선이 있어야 하기 때문에 북탭을 사용할 수 없습니다. 다음과 같아야 합니다.

Word로 만든 글꼴과 간격은 내가 원하는 것과 정확히 일치하지 않습니다. 현재 내가 가지고 있는 것은 다음과 같습니다. 여기에 이미지 설명을 입력하세요

(Word로 제작되었기 때문에 글꼴과 간격이 정확히 필요한 것은 아닙니다.)

답변1

자신에게 호의를 베풀고~하지 않다재정의 하고 \l. ​편리한 단축키를 찾을 수 있지만 해당 명령의 표준 의미(액센트와 관련됨)가 필요한 경우에는 큰 문제가 될 것입니다.\r\d

너비 설정은 넓은 쌍의 너비를 기준으로 이루어질 수 있지만 좋은 것을 추측하는 데 시간이 걸립니다.

\documentclass[12pt,letterpaper,french]{extarticle}
\usepackage[margin=.75in]{geometry}

\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{amsmath}
\usepackage{multirow,array}

%\usepackage{xparse} % not needed with LaTeX 2020-10-01 or later

\NewDocumentCommand{\pair}{s O{} >{\SplitArgument{1}{,}}m }{%
  \IfBooleanTF{#1}
    {\left(\makepair#3\right)}
    {\mathopen{#2(}\makepair#3\mathclose{#2)}}%
}
\NewDocumentCommand{\makepair}{ m m }{%
  #1\mspace{4mu}{,}\mspace{4mu}#2%
}

\newcommand{\adj}[1]{\ensuremath{\vphantom{#1|}}\ignorespaces}

\begin{document}

\begin{center}
\begin{tabular}{|c|c|w{c}{7em}|w{c}{7em}|}
\cline{3-4}
\multicolumn{2}{c|}{\adj{\Big}} & \multicolumn{2}{c|}{Individu 1} \\
\cline{3-4} 
\multicolumn{2}{c|}{\adj{\Big}} & Colombe & Faucon \\
\hline
\multirow{3}{*}{Individu 2}
& \adj{\bigg} Colombe & \(\pair[\Big]{\dfrac{g}{2},\dfrac{g}{2}}\) & \(\pair{g,0}\) \\
\cline{2-4}
& \adj{\bigg} Faucon  & \(\pair{0,g}\) & \(\pair[\Big]{\dfrac{g-c}{2},\dfrac{g-c}{2}}\) \\
\hline
\end{tabular}
\end{center}

\end{document}

무엇입니까 \adj{\Big}? 와 같은 스트럿을 추가합니다 \Big|. 큰 쌍이 있는 행의 경우 \adj{\bigg}괄호가 이미 이기 때문에 을 사용했습니다 \Big.

\pair{x,y}. 보다 쉬운 구문도 참고하세요 (x\virg y).

\left및를 사용하지 않습니까 \right? 출력을 자세히 살펴보면 위쪽 행과 아래쪽 행에 있는 큰 괄호의 크기가 다음과 같은 것을 알 수 있습니다.다른. 그 이유는 믿거나 말거나 맨 아래 행에 빼기 기호가 있기 때문입니다.

여기에 이미지 설명을 입력하세요


다른 제안.

\documentclass[12pt,letterpaper,french]{extarticle}
\usepackage[margin=.75in]{geometry}

\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{amsmath}
\usepackage{booktabs,array}

%\usepackage{xparse} % not needed with LaTeX 2020-10-01 or later

\NewDocumentCommand{\pair}{s O{} >{\SplitArgument{1}{,}}m }{%
  \IfBooleanTF{#1}
    {\left(\makepair#3\right)}
    {\mathopen{#2(}\makepair#3\mathclose{#2)}}%
}
\NewDocumentCommand{\makepair}{ m m }{%
  #1\mspace{4mu}{,}\mspace{4mu}#2%
}

\begin{document}

\begin{center}
\begin{tabular}{c w{c}{7em} w{c}{7em}}
\toprule
Individu 2 & \multicolumn{2}{c}{Individu 1} \\
\cmidrule(lr){2-3}
& Colombe & Faucon \\
\midrule
Colombe & \(\pair[\Big]{\dfrac{g}{2},\dfrac{g}{2}}\) & \(\pair{g,0}\) \\
\addlinespace
Faucon  & \(\pair{0,g}\) & \(\pair[\Big]{\dfrac{g-c}{2},\dfrac{g-c}{2}}\) \\
\bottomrule
\end{tabular}
\end{center}

\end{document}

여기에 이미지 설명을 입력하세요

답변2

이와 같이?

여기에 이미지 설명을 입력하세요

한 가지 방법은 셀 내용 위/아래에 수직 공간을 추가하는 패키지 \makegapedcells에 정의된 명령을 사용하는 것입니다 .makecell

\documentclass[12pt,letterpaper,french]{extarticle}
\usepackage[margin=.75in]{geometry}

\renewcommand{\l}{\left}
\renewcommand{\r}{\right}
\renewcommand{\d}{\displaystyle}
\newcommand{\virg}{\:,\:}

\renewcommand{\arraystretch}{2}
\usepackage{makecell, multirow}

\begin{document}

\begin{center}
\setcellgapes{5pt}
\makegapedcells
\begin{tabular}{cc|c|c|}
\cline{3-4}
 &  & \multicolumn{2}{c|}{Individu 1} \\ \cline{3-4}
 &  & Colombe & Faucun \\ \hline
\multicolumn{1}{|c|}{\multirow{2}{*}{Individu 2}} & Colombe & \(\d\l(\frac{g}{2} \virg \frac{g}{2}\r)\) & \((g \virg 0)\) \\ \cline{2-4}
\multicolumn{1}{|c|}{} & Faucon  & \((0 \virg g)\) & \(\d\l(\frac{g-c}{2} \virg \frac{g-c}{2}\r)\) \\ \hline
\end{tabular}
\end{center}

\end{document}

부록: @Mico 의견을 고려하여 위 솔루션을 다음과 같이 변경했습니다.

  • amsmath명령에 대한 패키지를 사용하면 분수에서 \dfrac사용하기 위해 정의가 대체됩니다 .\displaystyle
  • \l, 에 대한 정의를 제거하고 및 를 \r작성하는 것이 좋습니다 .\leftright
  • 세 번째와 네 번째 행의 높이를 동일하게 만들려면 \vphantom{-}세 번째 행의 분수에 를 더합니다. 이를 사용하면 하단 행의 분수 높이가 동일해집니다.

새로운 MWE:

\documentclass[12pt,letterpaper,french]{extarticle}
\usepackage[margin=.75in]{geometry}

\usepackage{amsmath}
\newcommand{\virg}{\:,\:}
\usepackage{makecell, multirow}

\begin{document}

\begin{center}
\setcellgapes{5pt}
\makegapedcells
\begin{tabular}{cc|c|c|}
    \cline{3-4}
    &           & \multicolumn{2}{c|}{Individu 1}   \\ \cline{3-4}
    &           & Colombe   & Faucun \\ \hline
\multicolumn{1}{|c|}{\multirow{4}{*}{Individu 2}} 
    & Colombe   & \(\left(\dfrac{g}{2}\virg\dfrac{g\vphantom{-}}{2}\right)\) 
                            & \((g\virg0)\)         \\ \cline{2-4}
\multicolumn{1}{|c|}{} 
    & Faucon    & \((0\ ,\ g)\) 
                            & \(\left(\dfrac{g-c}{2}\virg\dfrac{g-c}{2}\right)\) \\ \hline
\end{tabular}
\end{center}

\end{document}

여기에 이미지 설명을 입력하세요

답변3

내 생각에 이 문제를 해결하기 위한 도구는 다음과 같습니다.cellspace내 생각에 이 문제를 해결하기최소한의지정자 앞에 문자가 붙은 열의 셀 상단과 하단의 세로 간격 S(또는 C로드하는 경우 siunitx):

\documentclass[12pt,letterpaper,french]{extarticle}
\usepackage[margin=.75in]{geometry}
\usepackage{amsmath} 
\usepackage{cellspace}
\setlength{\cellspacetoplimit}{5pt}
\setlength{\cellspacebottomlimit}{5pt}
\renewcommand{\l}{\left}
\renewcommand{\r}{\right}
\renewcommand{\d}{\displaystyle}
\newcommand{\virg}{\:,\:}

\renewcommand{\arraystretch}{2}
\usepackage{multirow}

\begin{document}

\begin{center}
\begin{tabular}{cc|Sc|Sc|}
\cline{3-4}
 & & \multicolumn{2}{c|}{Individu 1} \\ \cline{3-4}
 & & Colombe & Faucun \\ \hline
\multicolumn{1}{|c|}{\multirow{2}{*}{Individu 2}} & Colombe & \(\Bigl(\dfrac{g}{2} \virg \dfrac{g}{2}\Bigr)\) & \((g \virg 0)\) \\ \cline{2-4}
\multicolumn{1}{|c|}{} & Faucon & \((0 \virg g)\) & \(\Bigl(\dfrac{g-c}{2} \virg \dfrac{g-c}{2}\Bigr)\) \\ \hline
\end{tabular}
\end{center}

\end{document}

여기에 이미지 설명을 입력하세요

답변4

귀하의 요구 사항을 올바르게 이해했다면 tabular아래의 첫 번째 솔루션이 작동할 것입니다. 4개 열의 너비가 모두 같고 4개 행의 높이가 모두 동일하기 때문입니다. 그러나 내 생각에는 tabular아래의 두 번째 해결 방법이 (더) 더 좋아 보인다.

여기에 이미지 설명을 입력하세요

\documentclass[12pt,letterpaper,french]{extarticle}
\usepackage[margin=.75in]{geometry}
\usepackage{multirow,array,babel,amsmath}
\newcommand\myfrac{\Bigl( \frac{g-c}{2}, \frac{g-c}{2} \Bigr)}
\newlength\mylen
\settowidth\mylen{$\displaystyle\myfrac$}
\newcolumntype{C}{>{$\displaystyle}w{c}{\mylen}<{$}}
\newcommand\tallstrut{\vphantom{\biggl|}} % typographic struts
\newcommand\shortstrut{\smash[b]{\vphantom{\Bigl|}}}

\begin{document}
\begin{table}
\centering

\begin{tabular}{|w{c}{\mylen}|w{c}{\mylen}|C|C|}
\cline{3-4}
\multicolumn{1}{c}{} & & \multicolumn{2}{c|}{Individu 1$\tallstrut$} \\
\cline{3-4}
\multicolumn{1}{c}{} & & $Colombe$\tallstrut & $Faucon$\tallstrut \\
\hline
\multirow{3}{*}{Individu 2} 
  & Colombe & \Bigl( \frac{g}{2}, \frac{g}{2} \Bigr)\tallstrut & (g,0) \\
\cline{2-4}
  & Faucon & (0,g)\tallstrut & \myfrac \\
\hline
\end{tabular}

\bigskip\bigskip

\begin{tabular}{|c|c|C|C|}
\cline{3-4}
\multicolumn{1}{c}{} & & \multicolumn{2}{c|}{Individu 1$\shortstrut$} \\
\cline{3-4}
\multicolumn{1}{c}{} & & $Colombe$\shortstrut & $Faucon$ \\
\hline
\multirow{3}{*}{Individu 2} 
  & Colombe & \Bigl( \frac{g}{2}, \frac{g}{2} \Bigr)\tallstrut & (g,0) \\
\cline{2-4}
  & Faucon & (0,g)\tallstrut & \myfrac \\
\hline
\end{tabular}

\end{table}
\end{document}

관련 정보