使用 tikz 矩阵中的多部分节点

使用 tikz 矩阵中的多部分节点

大家晚上好(或者早上好,随你喜欢)

我正在使用 tikz,在矩阵中使用多部分节点时遇到了一些小麻烦。这可能很简单,但我无法找出为什么在矩阵中使用多部分节点会给我带来一些额外的行:

\documentclass{standalone}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{tikz}


\usepackage{lmodern}
\usetikzlibrary{positioning,shapes.multipart, fit,backgrounds}


\begin{document}
\begin{tikzpicture}[every node/.style = {
        shape=rectangle split, rectangle split parts=2}]

  \node[matrix,draw,align=center]
  {\node{
  \nodepart{one}coucou
  \nodepart{two}double coucou};&\node{recoucou};\\};

\end{tikzpicture}
\end{document}

在此处输入图片描述

感谢您的解释

答案1

此处的问题是由于您的matrix形状节点是另一个节点,因此您的every node/.style也适用于它。要么为多部分节点定义样式并将其应用于它们,要么重新定义矩阵的形状,或者使用nodes矩阵的选项:

\documentclass{standalone}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\usepackage{lmodern}
\usetikzlibrary{positioning,shapes.multipart, fit,backgrounds}

\begin{document}
\begin{tikzpicture}[every node/.style = {
        shape=rectangle split, rectangle split parts=2}]
  \node[matrix,draw,align=center,shape=rectangle,]
  {\node{\nodepart{one}coucou\nodepart{two}double coucou};&\node{recoucou};\\
};
\end{tikzpicture}\qquad
\begin{tikzpicture}[mynode/.style = {
        shape=rectangle split, rectangle split parts=2}]
  \node[matrix,draw,align=center]
  {\node[mynode]{\nodepart{one}coucou\nodepart{two}double coucou};&\node[mynode]{recoucou};\\
};
\end{tikzpicture}\qquad
\begin{tikzpicture}
  \node[matrix,draw,align=center,nodes = {
        shape=rectangle split, rectangle split parts=2}]
  {\node{\nodepart{one}coucou\nodepart{two}double coucou};&\node{recoucou};\\
};
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容