对角线划分的表格单元格

对角线划分的表格单元格

可能重复:
表格单元格中的对角线

也可以看看:
如何对角线划分表格单元格

我想在我的文档中包含一个数字表。这些数字由两个参数定义n,我希望实现类似于 Comtet 在“高级组合学”中所做的演示。更确切地说,我感兴趣的是将左上角的单元格分开,以同时包含n,正如他在下面的例子中所做的那样:

替代文本

我怎么做?

答案1

一个简单的解决方案是使用slashbox

\documentclass{article}
\usepackage{slashbox}
\begin{document}

\begin{tabular}{c|cc}
 \backslashbox{n}{k} & 0 & 1\\\hline
0 & 1 & 2 \\
\end{tabular}


\end{document}

替代文本

如果您想用箭头等连接表格中的某些单元格,使用 tikz 可能会更容易。这是一个在节点矩阵中获取斜线框的邪恶黑客。我相信其他人可以做得更好

\documentclass{article}
\usepackage{slashbox}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}

%\begin{tabular}{c|cc}
 %\backslashbox{n}{k} & 0 & 1\\\hline
%0 & 1 & 2 \\
%\end{tabular}

\begin{tikzpicture}
 \matrix (mymatrix) [matrix of nodes,
            nodes in empty cells,
%text depth=.5ex,
text height=1.5ex,
text width=1.5ex
            ]
{
\begin{scope} \tikz\node[overlay] at (-.8ex,-0.4ex){\footnotesize n};\tikz\node[overlay] at (1ex,0.5ex){\footnotesize k}; \end{scope} & 2 & 3 & 8\\\hline
4 & |[fill=blue!10]|5 & 6 & 4\\
7 & 8 & 9 & 0\\
10 & 11 & 12 & |[fill=blue!10]|1\\
};
%vertical and diagonal line
\draw (mymatrix-1-2.north west) -- (mymatrix-4-2.south west);
\draw (mymatrix-1-1.north west) -- (mymatrix-1-1.south east);%n k diagonal line

%connection between nodes
\draw[->] (mymatrix-2-2) to [bend right=25] (mymatrix-4-4.north west);

\end{tikzpicture}


\end{document}

替代文本

答案2

\input eplain
\vbox{\offinterlineskip
\halign{\tabskip1em
  $\phantom{\Big)}#$&\vrule#&&\hfil$#$\hfil\cr
  \sarrowlength=1.5em
  \hidewidth\matrix{\sline(1,-1)\lft{n}\rt{k}}\hidewidth
    && 0 & 1 & 2 & 3 & 4 & 5 & 6 & \cdots \cr
  \noalign{\hrule}
  0 && 0 & 1 & 0 & 0 & 0 & 0 & 0 & \vdots \cr
  1 && 1 & 0 & 0 & 0 & 0 & 0 & 0 & \cr
  2 && 1 & 2 & 1 & 0 & 0 & 0 & 0 \cr
  3 && 1 & 3 & 3 & 1 & 0 & 0 & 0 \cr
  4 && 1 & 4 & 6 & 4 & 1 & 0 & 0 \cr
  5 && 1 & 5 & 10 & 10 & 5 & 1 & 0 \cr
  \vdots && \cdots \cr
}}\bye


它可以使用一些更好的间距,但想法就在那里。

相关内容