定位两个堆叠的 tikz 矩阵

定位两个堆叠的 tikz 矩阵

我想取两个TikZ matrix可能尺寸不同的,然后将它们堆叠起来。我的演示代码:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
\matrix [matrix of nodes,row sep=-\pgflinewidth,column 2/.style={nodes={rectangle,draw,minimum width=3em}}]
{
0   & 6 \\
};
\matrix [matrix of nodes,row sep=-\pgflinewidth,column 2/.style={nodes={rectangle,draw,minimum width=3em}}]
{
1   & 3 \\
};
\end{tikzpicture}
\end{document}

矩阵之间应该有一些空间,并且它们应该对齐。我试过用,below of但似乎不起作用……

在此处输入图片描述

答案1

您还可以使用scope并转移整个内容。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
\matrix [matrix of nodes,row sep=-\pgflinewidth,column 2/.style={nodes={rectangle,draw,minimum width=3em}}]
{
0   & 6 \\
};
\begin{scope}[yshift=-1cm]
\matrix [matrix of nodes,row sep=-\pgflinewidth,column 2/.style={nodes={rectangle,draw,minimum width=3em}}]
{
1   & 3 \\
};
\end{scope}
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

Amatrix实际上只是一个node,因此如果您命名顶部矩阵,(Top)那么您可以使用below of=Top另一个矩阵来定位它:

在此处输入图片描述

代码:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
\matrix  [matrix of nodes,row sep=-\pgflinewidth,column 2/.style={nodes={rectangle,draw,minimum width=3em}}] (Top)
{
0   & 6 \\
};
\matrix [matrix of nodes,row sep=-\pgflinewidth,column 2/.style={nodes={rectangle,draw,minimum width=3em}}, below of=Top]
{
1   & 3 \\
};
\end{tikzpicture}
\end{document}

相关内容