Tikz: Как вписать текст узла в рамку?

Tikz: Как вписать текст узла в рамку?

Предположим, я хочу объединить определенные узлы в блок,Однако я также хочу, чтобы текст узла был заключен в рамку.

Следующий 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}  

Если вы собираетесь использовать это часто, то создание стиля на его основе может быть хорошей идеей.

введите описание изображения здесь

Связанный контент