我遇到了一些软件包干扰的问题(我认为)。我正在处理一个文档,其中我既想有一个 tikz 图表,又想有一个表格,其中的一些单元格是彩色的。对于单元格颜色,我使用 xcolor 包,它给出了一个错误,我尝试用这里所说的方法解决它:软件包 xcolor 的选项冲突。
代码本来就可以工作,但我想使用注释掉的“biasedstate”框,而不是像现在这样简单地输入“biasedbox”(因此,当我定义 tikzpicture 时,我想用 \usebox{\biasedstate} 替换“biasedbox”)。但是,简单地取消注释 biasedstate 框的代码会出现错误,我不明白为什么。
我知道这与 xcolor 包有关,因为当我从第一行删除 ',table' 并删除 \cellcolor{red!25} 时,biasedstate 框可以正常工作。
\documentclass[11pt,A4paper,table]{article}%
\usepackage{tikz-cd}
\usetikzlibrary{positioning}
\usepackage{tabularx}
\newsavebox{\fairstate}
\newsavebox{\biasedstate}
\sbox{\fairstate}{
\begin{tabular}{|l r|}
\multicolumn{2}{c}{\textbf{Fair}} \tabularnewline
\hline
1: & 1/6\\
2: & 1/6\\
3: & 1/6\\
4: & 1/6\\
5: & 1/6\\
6: & 1/6\\
\hline
\end{tabular}
}
%\sbox{\biasedstate}{
% \begin{tabular}{|l r|}
% \multicolumn{2}{c}{\textbf{Biased}} \tabularnewline
% \hline
% 1: & 1/10\\
% 2: & 1/10\\
% 3: & 1/10\\
% 4: & 1/10\\
% 5: & 1/10\\
% 6: & 1/2\\
% \hline
% \end{tabular}
%}
\begin{document}
\begin{tikzpicture}[>=stealth,->,shorten >=1pt,looseness=1,auto]
\matrix [matrix of nodes] {
\node (fair) [shape=rectangle] {\usebox{\fairstate}};
\node (biased) [shape=rectangle,right=of fair] {biasedbox};\\
};
\draw (fair) to [bend left] node [pos=0.55] {0.05} (biased);
\draw (biased) to [bend left] node [pos=0.45] {$0.1$} (fair);
\path[every node/.style={auto=false},every loop/.style={looseness=5}]
(fair) edge [loop left] node [midway] {0.95} ()
(biased) edge [loop right] node [midway] {0.9} ();
\end{tikzpicture}
\begin{tabularx}{300pt}{ccc}
a&b&c\\
d&e&\cellcolor{red!25}f
\end{tabularx}
\end{document}