次のようなコードがあります:
\begin{center}
$\left.% Use `\left.` if don't want arrow on this side.
\begin{tabular}{r r r }
\toprule
strength & region & comments \\
\midrule
$H_B \ll H_0$ & Landau levels \\
$ H_B \lessapprox H_0 $& $n$-mixing & $n$ not good\\
& $\ell$-lmixing & $\ell$ not good \\
$H_B \ll B_0$ & Paschen-Back regime & $J$ noot good, $L$ and $S$ good \\
& Intermediate regime & $J$ and $I$ good, $F$ not good \\
& Zeeman effect & $F$ good \\
\bottomrule
\end{tabular}
\quad
\right\updownarrow% Use `\right.` if don't want arrow on this side.
\rotatebox[origin=100]{0}{Landau limit}$
\caption{HAILO}
\end{center}
生成するもの:
私が望むこと:
最初の列のエントリ (強度、地域、コメント) を列の内容の中央に配置するにはどうすればよいですか?
赤い矢印で描いたように、表の右上隅に Landau 限界のテキストを表示するにはどうすればよいですか?
ありがとう。
答え1
bigdelim
とに基づいて、これはどうでしょうかmakecell
? キャプションの余白は試行錯誤によって得られました。これは最後の列のテキストに依存します。
\documentclass{article}
\usepackage{geometry}
\usepackage{amssymb}
\usepackage{caption, booktabs, bigdelim, makecell}%
\renewcommand{\theadfont}{\normalsize\bfseries}
\begin{document}
\begin{table}[!htb]
\centering
\captionsetup{margin={0pt,28mm},skip=6pt}
\caption{HAILO}
\begin{tabular}{r r r c@{}l}
\cmidrule[\heavyrulewidth]{1-3}
\thead{strength} & \thead{region} & \thead{comments} & \rdelim\updownarrow{7}{*} & Landau limit \\
\cmidrule{1-3}
$H_B \ll H_0$ & Landau levels \\
$ H_B \lessapprox H_0 $& $n$-mixing & $n$ not good\\
& $\ell$-lmixing & $\ell$ not good \\
$H_B \ll B_0$ & Paschen-Back regime & $J$ noot good, $L$ and $S$ good \\
& Intermediate regime & $J$ and $I$ good, $F$ not good \\
& Zeeman effect & $F$ good \\
\cmidrule[\heavyrulewidth]{1-3}
\end{tabular}
\end{table}
\end{document}
答え2
テーブルに booktabs を使用せずに (代わりclines
に)、矢印付きの tikz を使用すると、テストで高さがわかります。
\documentclass{article}
\usepackage{amssymb}
\usepackage{caption}
\usepackage{tikz}
\usepackage{multirow}
\begin{document}
\begin{center}
$% Use `\left.` if don't want arrow on this side.
\begin{tabular}[t]{r r r c l}\cline{1-3}
\multicolumn{1}{c}{strength} & \multicolumn{1}{c}{region} & \multicolumn{1}{c}{comments} &\multirow{6}{*}{\begin{tikzpicture}\draw[<->](0,0)--(0,2.9cm);\end{tikzpicture}}&Landau limit\\
\cline{1-3}
$H_B \ll H_0$ & Landau levels &&\\
$ H_B \lessapprox H_0 $& $n$-mixing & $n$ not good&&\\
& $\ell$-lmixing & $\ell$ not good &&\\
$H_B \ll B_0$ & Paschen-Back regime & $J$ noot good, $L$ and $S$ good &&\\
& Intermediate regime & $J$ and $I$ good, $F$ not good &&\\
& Zeeman effect & $F$ good &&\\
\cline{1-3}
\end{tabular}
\rotatebox[origin=100]{0}{}$
\captionof{table}{HAILO}
\end{center}
\end{document}
出力:
PS: まずは始めに...
(OP の動作しない例に必要なパッケージ:
\usepackage{booktabs}
\usepackage{amssymb}
\usepackage{rotating}
そして
\usepackage{caption}
修正\captionof{table}
の代わりに\caption{}
)
答え3
この$\left...$
効果を得るには[c]
表が必要です。しかし、テキストを揃えるには[t]
表が必要です。そこで、[t]
表のサイズを測り、 と を使用して\raisebox
、 \rule
適切なサイズの中央揃えのオブジェクトを偽装しました。最終的に、表の上部のベースラインは実際には なので\toprule
、テキストを別の表の 2 行目に配置する必要がありました。
\documentclass{article}
\usepackage[margin=1in]{geometry}
\usepackage{amssymb}
\usepackage{caption, booktabs, graphics}%
\begin{document}
\begin{center}
\sbox0{\begin{tabular}[t]{r r r}
\toprule
\multicolumn{1}{c}{strength} & \multicolumn{1}{c}{region} & \multicolumn{1}{c}{comments} \\
\midrule
$H_B \ll H_0$ & Landau levels \\
$ H_B \lessapprox H_0 $& $n$-mixing & $n$ not good\\
& $\ell$-lmixing & $\ell$ not good \\
$H_B \ll B_0$ & Paschen-Back regime & $J$ noot good, $L$ and $S$ good \\
& Intermediate regime & $J$ and $I$ good, $F$ not good \\
& Zeeman effect & $F$ good \\
\bottomrule
\end{tabular}}%
\usebox0
\raisebox{\dimexpr 0.5\ht0-0.5\dp0 + 0.5\dp\strutbox-0.5\ht\strutbox}{$\left.\rule{0pt}{\dimexpr 0.5\ht0+0.5\dp0}\right\updownarrow$}%
\begin{tabular}[t]{l} \\Landau limit \end{tabular}
\captionof{table}{HAILO}
\end{center}
\end{document}