
Я попытался использовать \cellcolor
, как предложено взакрасить только ячейку таблицыно это не сработало. Можно ли это сделать?
Вот мой код:
\documentclass{beamer}
\usepackage{colortbl,xcolor}
\newcommand\y{\cellcolor{green!10}}
\begin{document}
\[ \bordermatrix{
& X_1 & X_2 & X_3 \cr
& 1 & \y 2 & 3 \cr
& 1 & 2 & 3 \cr
& 1 & 2 & 3 \cr
& 1 & 2 & 3 \cr
& 1 & 2 & 3 } \]
\end{document}
решение1
Вы можете использоватьkbordermatrix
пакет (его нет на CTAN, вы можете скачать его по ссылке, которую я предоставил) и его \kbordermatrix
команду вместо этого и оберните \cellcolor
внутрь \multicolumn
:
\documentclass{beamer}
\usepackage{colortbl,xcolor}
\usepackage{kbordermatrix}
\newcommand\y{\cellcolor{green!20}}
\renewcommand\kbldelim{(}
\renewcommand\kbrdelim{)}
\begin{document}
\begin{frame}
\[ \kbordermatrix{
& X_1 & X_2 & X_3 \cr
& 1 & \multicolumn{1}{c}{\y 2} & 3 \cr
& 1 & \multicolumn{1}{c}{\cellcolor{red!20}2} & 3 \cr
& 1 & \multicolumn{1}{c}{\cellcolor{olive!20}2} & 3 \cr
& 1 & \multicolumn{1}{c}{\cellcolor{blue!20}2} & 3 \cr
& 1 & \multicolumn{1}{c}{\cellcolor{orange!20}2} & 3 } \]
\end{frame}
\end{document}
Другой вариант — использоватьblkarray
вместо этого упакуйте и, снова, поместите цвет внутрь \multicolumn
:
\PassOptionsToPackage{table}{xcolor}
\documentclass{beamer}
\usepackage{blkarray}
\newcommand\y{\cellcolor{green!20}}
\begin{document}
\begin{frame}
\[
\begin{blockarray}{ccc}
X_1 & X_2 & X_3 \\
\begin{block}{(ccc)}
1 & \multicolumn{1}{c}{\cellcolor{blue!20}2} & 3 \\
1 & \multicolumn{1}{c}{\y 2} & 3 \\
1 & \multicolumn{1}{c}{\cellcolor{red!20}2} & 3 \\
\end{block}
\end{blockarray}
\]
\end{frame}
\end{document}
решение2
А как насчет простого \colorbox
?
\documentclass[xcolor=table]{beamer}
\newcommand\y[1]{%
\colorbox{green!10}{$#1$}%
}
\begin{document}
\[
\bordermatrix{
& X_1 & X_2 & X_3 \cr
& 1 & \y{2} & 3 \cr
& 1 & 2 & 3 \cr
& 1 & 2 & 3 \cr
& 1 & 2 & 3 \cr
& 1 & 2 & 3
}
\]
\end{document}