
表の行間にスペースを追加するために私が見つけた解決策は、\arraystretch
しかし、これは私にはうまくいきません。私が持っているテーブル\begin{array}
には内部に があります。そして、\arraystretch
テーブル内の配列が引き伸ばされ、表示されているベクトルの下部とテーブル行の間にスペースが追加されるのではなく、それが私が望んでいたことです。
ご注意くださいarray
:最後の列のベクトルをタイプセットするために使用するコードを他のものに変更することはできません。そのコードは自動生成されるためです。
テーブル内の他の部分を変更することはできますが、array
コードはそのままにしておく必要があります。それを変更する方法はありません。
例を挙げれば説明が分かりやすくなります。
\documentclass[12pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{center}
\bgroup
\renewcommand{\arraystretch}{2}
\begin{tabular}{|c|c|c|c|c|}\hline
eigenvalue & {\footnotesize algebraic multiplicity $m$}& {\footnotesize geometric multiplicty $k$}& {\small defective?}& eigenvectors \\ \hline
$3 i$&$1$&$1$&No&$\left[\begin{array}{c}i \\1 \\\end{array}\right]$ \\ \hline
$-3 i$&$1$&$1$&No&$\left[\begin{array}{c}-i \\1 \\\end{array}\right]$ \\ \hline
\end{tabular}
\egroup
\end{center}
\end{document}
lualatexを使用してコンパイルすると、出力は次のようになります。
に変更する\renewcommand{\arraystretch}{2}
と、\renewcommand{\arraystretch}{5}
ベクトルの下部とテーブルの端の間に同じスペースが維持されたまま、ベクトルも内部で引き伸ばされますが、これは望んでいることではありません。
結果は次の通りです5
これを解決する正しい方法は何ですか? 表示されているベクトルの上部/下部と行を区切る線の間にもっとスペースが必要です。残りのセルはそのままで問題ありません。
TL2020
参照:
答え1
\makegapedcells
パッケージで定義されたマクロを使用して、セルの内容に垂直方向のスペースを追加できます makecell
。テーブルがテキスト幅に収まらないほど広いため、2 列目と 3 列目の列ヘッダーを再作成することをお勧めします。
\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{makecell}
\begin{document}
\begin{center}
\setcellgapes{5pt}
\makegapedcells
\begin{tabular}{|*{5}{c|} }
\hline
& \multicolumn{2}{c|}{ multiplicity}
& & \\
\cline{2-3}
eigenvalue
& algebraic $m$
& multiplicty $k$
& defective?
& eigenvectors \\
\hline
$3i$ & 1 & 1 & No & $\begin{bmatrix} i \\1 \end{bmatrix}$ \\
\hline
$-3i$ & 1 & 1 & No & $\begin{bmatrix} -i \\1 \end{bmatrix}$ \\
\hline
\end{tabular}
\end{center}
\end{document}
編集:
bmatrix
何らかの理由で行列にコードを使用する場合は、次のコードを使用して、短くてエレガントなコードを置き換えるだけですarray
。
\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{makecell}
\begin{document}
\begin{center}
\setcellgapes{5pt}
\makegapedcells
\begin{tabular}{|*{5}{c|} }
\hline
& \multicolumn{2}{c|}{ multiplicity}
& & \\
\cline{2-3}
eigenvalue
& algebraic $m$
& multiplicty $k$
& defective?
& eigenvectors \\
\hline
$3i$ & 1 & 1 & No & $\left[\begin{array}{c} i \\1 \end{array}\right]$ \\
\hline
$-3i$ & 1 & 1 & No & $\left[\begin{array}{c} -i \\1 \end{array}\right]$ \\
\hline
\end{tabular}
\end{center}
\end{document}
上記の解決策の結果は以前と同じです...
答え2
このcellspace
パッケージでは、最小限文字 で始まる指定子を持つ列のセルの上部と下部の垂直方向のパディングS
(またはC
をロードしsiunitx
、math
オプションはマトリックス環境で同じことを行います。 この問題とは関係なく、 をより単純な にamsmath
置き換えることでコードを簡素化しました。\left[\begin{array}[c}...\end{array}\right]
\begin{bmatrix} ... \end{bmatrix}
\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage[math]{cellspace}
\setlength{\cellspacetoplimit}{6pt}
\setlength{\cellspacebottomlimit}{6pt}
\begin{document}
\begin{center}
\begin{tabular}{|*{5}{Sc|}}\hline
eigenvalue & {\footnotesize algebraic multiplicity $m$}& {\footnotesize geometric multiplicty $k$}& {\small defective?}& eigenvectors \\ \hline
$3 i$&$1$&$1$&No&$\begin{bmatrix}i \\ \,1\, \end{bmatrix}$ \\ \hline
$-3 i$&$1$&$1$&No&$\begin{bmatrix} -i \\1 \\\end{bmatrix}$ \\ \hline
\end{tabular}
\end{center}
\end{document}