将 fit 与 nodeparts 结合使用

将 fit 与 nodeparts 结合使用

我正在尝试调整节点onetwo属于一个分离节点,以便将它们封装在具有不同颜色的矩形内:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{chains}
\usetikzlibrary{shapes}
\usetikzlibrary{shapes.multipart}
\usetikzlibrary{fit}

\begin{document}
    \begin{tikzpicture}
        \node (qs) [draw,font=\tiny,
        rectangle split,
        rectangle split parts=3,
        text centered,
        align=center,
        ] at (-2.3,0) {%
            \nodepart{one} one
            \nodepart{two} two
            \nodepart{three} three
        };
        
        \node[fit=(qs.one above left)(qs.two),rectangle,draw=red,line width=1mm] {};
        \node[fit=(qs.one north west)(qs.two),rectangle,draw=red,line width=1mm] {};
    \end{tikzpicture}
\end{document}

顺便说一句,它既不识别above left也不识别north west。用正确的坐标绘制此边框的最佳解决方案是什么?

包 PGF 数学错误:未知函数“one”(在“左上方的一个”中)。...qs.two)、rectangle、draw=red、line width=1mm]

包 PGF 数学错误:未知函数“one”(在“one north west”中)。...qs.two),rectangle,draw=red,line width=1mm]

答案1

我怀疑你正在寻找

在此处输入图片描述

\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{chains,
                fit,
                shapes,
                shapes.multipart}

\begin{document}
    \begin{tikzpicture}[
F/.style = {draw=red, line width=1mm, inner sep=0mm}
                        ]
\node (qs) [draw,font=\tiny,
            rectangle split,
            rectangle split parts=3,
            text centered,
            align=center] at (-2.3,0) {%
    \nodepart{one} one
    \nodepart{two} two
    \nodepart{three} three
};

\node[F, fit=(qs.north west) (qs.two split east)] {};
    \end{tikzpicture}
\end{document}

编辑:现在图像已按照评论的要求进行了更正。

相关内容