私は、ビーマー フレームの 1 つにテーブルを含めようとしています。このテーブルの 2 列ごとに灰色の背景色にしたいです。私の LaTeX ドキュメントでは、次のコードが機能しました。
\definecolor{Gray}{gray}{0.9}
\newcolumntype{g}{>{\columncolor{Gray}}c}
\begin{table}[ht]
\centering
\begin{tabular}{c|g|c|g|c|g}
5.35 & 0.35 & 5.61 & -0.39 & 6.84 & -0.16 \\
5.45 & 0.45 & 5.52 & -0.48 & 6.84 & -0.16 \\
5.45 & 0.45 & 5.51 & -0.49 & 6.96 & -0.04 \\
5.45 & 0.45 & 5.63 & -0.37 & 6.96 & -0.04
\end{tabular}
\caption{my caption.}
\label{myTable}
\end{table}
しかし、これはbeamerでは動作しません。私は\usepackage{xcolor}
パッケージを使用しています。今、私はこのブログ\documentclass[xcolor=table]{beamer}
使用するドキュメントクラスを変更すれば\usepackage[table]{xcolor}
、すべてが機能するはずです。ここでの問題は、beamer テンプレートではなく、カスタマイズされたテンプレートを使用していることです。とにかく、私にはこれが理解できません。それほど複雑なことではないはずですよね?
残念ながら、ポップアップ表示されるエラー メッセージはまったく役に立ちません。単に次のように表示されます。Undefined control sequence \end{frame}
答え1
パッケージはパッケージbeamer
をロードしますxcolor
。 に何らかのオプションを追加する場合はxcolor
、ドキュメント クラス オプションの間にこのオプションを記述する必要があります。
\documentclass[table]{beamer} % <--- option "table" is passed to "xcolor" pacage
\definecolor{Gray}{gray}{0.9}
\newcolumntype{g}{>{\columncolor{Gray}}c}
\begin{document}
\begin{frame}
\frametitle{My colored table}
\begin{table}% table in beamer isn't float ...
\centering
\begin{tabular}{c|g|c|g|c|g}
5.35 & 0.35 & 5.61 & -0.39 & 6.84 & -0.16 \\
5.45 & 0.45 & 5.52 & -0.48 & 6.84 & -0.16 \\
5.45 & 0.45 & 5.51 & -0.49 & 6.96 & -0.04 \\
5.45 & 0.45 & 5.63 & -0.37 & 6.96 & -0.04
\end{tabular}
\caption{my caption.}
\label{myTable}
\end{table}
\end{frame}
\end{document}
望ましい結果が得られます:
答え2
tikzpicture
はクラスによく適合しているためbeamer
(同じ著者 Till Tantao によって書かれています)、テーブルを として作成することが可能ですtikzpicture
。オプション をロードする必要はありません[table]
。
\documentclass{beamer}
\usepackage{tikz}
% I mimick the way of putting a row in a table
\newcommand{\putrow}[7]{
\path (0,#1) node{#2}
++(0:1) node{#3} ++(0:1) node{#4}
++(0:1) node{#5} ++(0:1) node{#6} ++(0:1) node{#7};
}
\begin{document}
\begin{frame}
\frametitle{Colored table}
\centering
\begin{tikzpicture}[xscale=1.2,yscale=.5]
\begin{scope}[shift={(-.5,.5)}]
\foreach \i in {1,3,5} \fill[blue!20] (\i,0) rectangle +(1,-4);
\foreach \i in {1,...,6} \draw[blue] (\i,0)--+(-90:4);
\end{scope}
\putrow{0}{5.35}{0.35}{5.61}{-0.39}{6.84}{-0.16}
\putrow{-1}{5.45}{0.45}{5.52}{-0.48}{6.84}{-0.16}
\putrow{-2}{5.45}{0.45}{5.51}{-0.49}{6.96}{-0.04}
\putrow{-3}{5.45}{0.45}{5.63}{-0.37}{6.96}{-0.04}
\path (current bounding box.south) node[below=2mm,blue]
{My colored table as a tikzpicture};
\end{tikzpicture}
\end{frame}
\end{document}