私は表の編集に苦労していたので、LaTeX で表を生成する Web サイトを使い始めました。しかし、複数行や境界線を使用すると、少し扱いにくくなります。列に沿って不連続な線が表示されます。
テストとして、これを使用します:
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{@{}c|cc@{}}
Test & a & b \\ \midrule
\multirow{2}{*}{x} & 1 & 2 \\ \cmidrule(l){2-3}
& 3 & 4
\end{tabular}
\end{table}
結果は次のとおりです。
私は MiKTeX 2.9.6210 と Texmaker 4.5 で TexPortable を使用しています。
答え1
これは、 の水平線の周囲のパディングbooktabs
(長さ\aboverulesep
と\belowrulesep
) に関連しています。 垂直線は、一般に では使用しないでくださいbooktabs
(この原則には例外があります)。 回避策としては、 を 0 に設定し、 のツールを使用してセルの上部と下部に追加されたほぼ同等の長さで置き換えることができますmakecell
。
\documentclass{article}
\usepackage{booktabs, multirow, array, makecell, caption}
\begin{document}
\begin{table}[!htb]
\centering
\setlength\aboverulesep{0pt}\setlength\belowrulesep{0pt}
\setcellgapes{3pt}\makegapedcells
\caption{My caption}
\label{my-label}
\begin{tabular}{@{}c|cc@{}}
Test & a & b \\ \midrule
\multirow{2}{*}{x} & 1 & 2 \\ \addlinespace[-0.03em]\cmidrule(l){2-3}
& 3 & 4
\end{tabular}
\end{table}
\end{document}
答え2
の水平線と互換性のある垂直線が必要な場合はbooktabs
、{NiceTabular}
を使用する必要がありますnicematrix
。
\documentclass{article}
\usepackage{booktabs, caption, nicematrix}
\begin{document}
\begin{table}[!htb]
\centering
\caption{My caption}
\label{my-label}
\begin{NiceTabular}{@{}c|cc@{}}[cell-space-limits=3pt]
Test & a & b \\ \midrule
\Block{2-1}{x} & 1 & 2 \\ \cmidrule(l){2-3}
& 3 & 4
\end{NiceTabular}
\end{table}
\end{document}