TikZ에서 최대 노드 너비를 설정할 수 있습니까?

TikZ에서 최대 노드 너비를 설정할 수 있습니까?

저는 이 두 노드가 같은 크기, 즉 더 작은 노드의 크기가 되기를 바랍니다. 본질적으로 설정할 수 있기를 원 maximum size=6mm하지만 그러한 옵션이 없습니다. 어떻게 해야 하나요?

\documentclass[tikz, border=10]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
    \tikzstyle{mystyle}=[circle,minimum size=6mm,draw=black,fill=white]
    \node (9) at (0,0) [mystyle] {9};
    \node (10) at (1,0) [mystyle] {10};
\end{tikzpicture}
\end{document}  

여기에 이미지 설명을 입력하세요

답변1

maximum size키 는 없지만 text width(및 가능하면 inner sep)을 사용하여 원하는 결과를 얻을 수 있습니다.

\documentclass[tikz, border=10]{standalone}
\usepackage{tikz}

\tikzset{
mystyle/.style={
  circle,
  inner sep=0pt,
  text width=6mm,
  align=center,
  draw=black,
  fill=white
  }
}

\begin{document}
\begin{tikzpicture}
    \node (9) at (0,0) [mystyle] {9};
    \node (10) at (1,0) [mystyle] {10};
\end{tikzpicture}
\end{document}

결과:

여기에 이미지 설명을 입력하세요

minimum size또 다른 옵션은 와 같이 에 대해 더 큰 값을 선택하는 것이었습니다 minimum size=8mm.

\tikzstyle더 적절한 \tikzset. 통사론.

답변2

대체 솔루션은 a를 수정하는 것이지만 minimum size노드의 내용을 중앙 레이블로 작성하는 것입니다. labelsa로 그려지며 postaction노드 크기에 영향을 주지 않습니다.

\documentclass[tikz, border=10]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
    \tikzstyle{mystyle}=[circle,minimum size=6mm,draw=black,fill=white]
    \node[mystyle] (9) at (0,0) {9};
    \node[mystyle, label=center:10] (10) at (1,0) {};
    \node[mystyle, label=center:100] (100) at (2,0) {};
    \node[mystyle, label=center:1000] (1000) at (3,0) {};
\end{tikzpicture}
\end{document} 

여기에 이미지 설명을 입력하세요

답변3

내 블록 다이어그램에는 일반 짧은 텍스트 노드에 대해 하나의 스타일 세트가 있습니다. 긴 텍스트 노드를 위한 또 다른 하나입니다. 이슈 이기 때문이죠 center.

mylong/.style={
  draw,
  rectangle,
  text width=20mm, % text is longer than 20mm.
  thick,
  % align=center,
  font=\itshape
},
myshort/.style={
  draw,
  rectangle,
  minimum size=6mm,
  thick,
  % align=center,
  font=\itshape
}

20mm 이내에서는 엄격하지 않지만 결과는 수용 가능합니다(사람들이 보는 방식에 따라 다름).

관련 정보