線幅の50%以内で配列を調整する方法

線幅の50%以内で配列を調整する方法

配列を使用して描画したテーブルがいくつかあります。サンプルの 1 つを以下に示します。線幅の 50% 内に収まるようにテーブルを自動的に調整するにはどうすればよいですか?

 $\displaystyle \boldsymbol{\begin{array}{|*{20}{c|}}
\hline
   {Student} & \begin{gathered}
  Length{\text{ of the }} \hfill \\
  {\text{pendulum (cm)}} \hfill \\
\end{gathered}  & \begin{gathered}
  No.{\text{ }}of \hfill \\
  {\text{oscillations (n) }} \hfill \\
\end{gathered}  & \begin{gathered}
  {\text{Total time }} \hfill \\
  {\text{for(n) oscillation (s)}} \hfill \\
\end{gathered}  & \begin{gathered}
  {\text{Time period }} \hfill \\
  {\text{(s)}} \hfill \\
\end{gathered}   \\
\hline
   I & {64.0} & 8 & {128.0} & {16.0}  \\
   \hline
   {II} & {64.0} & 4 & {64.0} & {16.0}  \\
   \hline
   {III} & {20.0} & 4 & {36.0} & {9.0}  \\
   \hline
 \end{array}  }$

答え1

arrayなぜ数式モードを使用しているのかわかりません。

ここに 3 つの提案があります。最初の提案では列ヘッダーが大きすぎるという問題があり、他の 2 つはシンボリック ヘッダーを作成することでこの問題を解決します。

パッケージbooktabsと はsiunitx最後のテーブル形式にのみ必要です。

\documentclass{article}
\usepackage{amsmath}
\usepackage{booktabs,siunitx}

\newcommand{\manyrows}[1]{%
  \begin{tabular}{@{}c@{}}\strut#1\strut\end{tabular}%
}
\newcommand{\coldesc}[3]{%
  \multicolumn{#1}{l}{\footnotesize #2: #3} \\
}

\begin{document}
\begin{table}[htp]
\centering
\begin{tabular}{|*{5}{c|}}
\hline
Student &
  \manyrows{Length of the \\ pendulum (cm)} &
  \manyrows{No. of \\ oscillations ($n$)} &
  \manyrows{Total time for ($n$) \\ oscillation(s)} &
  \manyrows{Time \\ period(s)} \\
\hline
I & 64.0 & 8 & 128.0 & 16.0 \\
\hline
II & 64.0 & 4 & 64.0 & 16.0 \\
\hline
III & 20.0 & 4 & 36.0 & 9.0 \\
\hline
\end{tabular}

\caption{This table is too wide}
\end{table}

\begin{table}[htp]
\centering

\begin{tabular}{|*{5}{c|}}
\hline
Student & (A) & (B) & (C) & (D) \\
\hline
I & 64.0 & 8 & 128.0 & 16.0 \\
\hline
II & 64.0 & 4 & 64.0 & 16.0 \\
\hline
III & 20.0 & 4 & 36.0 & 9.0 \\
\hline
\coldesc{5}{(A)}{Length of the pendulum (cm)}
\coldesc{5}{(B)}{No. of oscillations ($n$)}
\coldesc{5}{(C)}{Total time for ($n$) oscillation(s)}
\coldesc{5}{(D)}{Time period(s)}
\end{tabular}

\caption{This table is better}

\end{table}

\begin{table}[htp]
\centering

\begin{tabular}{
  l
  S[table-format=2.1]
  S[table-format=1.0]
  S[table-format=3.1]
  S[table-format=2.1]
}
\toprule
Student & {(A)} & {(B)} & {(C)} & {(D)} \\
\midrule
I & 64.0 & 8 & 128.0 & 16.0 \\
II & 64.0 & 4 & 64.0 & 16.0 \\
III & 20.0 & 4 & 36.0 & 9.0 \\
\bottomrule
\coldesc{5}{(A)}{Length of the pendulum (\si{cm})}
\coldesc{5}{(B)}{No. of oscillations ($n$)}
\coldesc{5}{(C)}{Total time for ($n$) oscillation(s)}
\coldesc{5}{(D)}{Time period(s)}
\end{tabular}

\caption{This table is even better}

\end{table}

\end{document}

ここに画像の説明を入力してください

関連情報