表の横にテキストを書く

表の横にテキストを書く

次のようなコードがあります:

\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} 

デモ

関連情報