Предположим, я хочу объединить определенные узлы в блок,Однако я также хочу, чтобы текст узла был заключен в рамку.
Следующий MWE помещает узел в поле, однако текст, размещенный ниже (или слева/сверху/справа), — нет.
Как собрать воедино все, что связано с узлом?
МВЭ:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{backgrounds}
\usetikzlibrary{shapes}
\usetikzlibrary{arrows}
\usetikzlibrary{fit}
\begin{document}
\begin{tikzpicture}[>=stealth',semithick,auto]
\tikzstyle{surround} = [fill=blue!10,thick,draw=black,rounded corners=2mm]
\tikzstyle{obj} = [circle, minimum width=10pt, draw, inner sep=0pt]
\node[obj,label=below:Outside] (id1) at (2,2) {};
\begin{pgfonlayer}{background}
\node[surround] (background) [fit = (id1)] {};
\end{pgfonlayer}
\end{tikzpicture}
\end{document}
решение1
Вы можете дать метке название и добавить ее в fit
список.
\node[obj,label={[name=id1-l]below:Outside}] (id1) at (2,2) {};
\begin{pgfonlayer}{background}
\node[surround] (background) [fit = (id1)(id1-l)] {};
\end{pgfonlayer}
Если вы собираетесь использовать это часто, то создание стиля на его основе может быть хорошей идеей.