TikZ 이미지의 노드 크기를 모든 노드에 대해 동일하게 설정하려면 어떻게 해야 합니까?

TikZ 이미지의 노드 크기를 모든 노드에 대해 동일하게 설정하려면 어떻게 해야 합니까?

저는 TikZ에서 Kripke 구조를 그리려고 시도하고 있으며 대부분 성공했지만 결과가 그다지 만족스럽지 않습니다. 내 서문은 다음과 같습니다.

\documentclass[10pt,letterpaper]{amsart}

% Personal Packages

\usepackage{notation}

% TikZ Drawing packages

\usepackage{tikz}
\usetikzlibrary{arrows}

% Font and Typography Settings

\usepackage{concrete}
\usepackage{euler}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[babel=true]{microtype}

내 MWE를 따르세요.

\begin{figure}
\begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=3cm,
    thick,base node/.style={circle,draw}, real node/.style={double,circle,draw}]

    \node[real node] (1) {$s(C)$};
    \node[base node] (2) [below left of=1] {$s(\alpha)$};
    \node[base node] (3) [below right of=1] {$\neg{s(\alpha)}$};
    \path[]
        (1) edge node[left] {$L,J$} (2)
            edge node[right] {$L,J$} (3)
            edge [loop above] node {$C$} (1)
        (2) edge [bend left] node {$C,L,J$} (3)
            edge [loop left] node {$C,L,J$} (2)
        (3) edge [bend left] node {$C,L,J$} (2)
            edge [loop right] node {$C,L,J$} (3);
\end{tikzpicture}
\caption{The initial state of the domain in Ex.~\ref{ex:whisper}.}
\end{figure}

내가 겪고 있는 어려움은 노드가 3노드보다 크다는 것입니다 2(아마도 레이블 텍스트를 수용하기 위해 자체 크기가 조정되기 때문일 것입니다). 노드의 크기를 모두 동일하게 할 수 있는 방법이 있나요? 또한 다이어그램을 더욱 미적으로 보기 좋게 만드는 방법에 대한 제안을 주시면 감사하겠습니다(저는 OmniGraffle에서 왔고 전환이 약간 어렵습니다).

답변1

다음 키를 사용할 수 있습니다 minimum size=.

\documentclass[10pt,letterpaper]{amsart}

% Personal Packages

%\usepackage{notation}

% TikZ Drawing packages

\usepackage{tikz}
\usetikzlibrary{arrows}

% Font and Typography Settings

\usepackage{concrete}
\usepackage{euler}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[babel=true]{microtype}

\begin{document}

\begin{figure}
\begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=3cm,
    thick,base node/.style={circle,draw,minimum size=35pt}, real node/.style={double,circle,draw,minimum size=35pt}]

    \node[real node] (1) {$s(C)$};
    \node[base node] (2) [below left of=1] {$s(\alpha)$};
    \node[base node] (3) [below right of=1] {$\neg{s(\alpha)}$};
    \path[]
        (1) edge node[left] {$L,J$} (2)
            edge node[right] {$L,J$} (3)
            edge [loop above] node {$C$} (1)
        (2) edge [bend left] node {$C,L,J$} (3)
            edge [loop left] node {$C,L,J$} (2)
        (3) edge [bend left] node {$C,L,J$} (2)
            edge [loop right] node {$C,L,J$} (3);
\end{tikzpicture}
\caption{The initial state of the domain in Ex.~\ref{ex:whisper}.}
\end{figure}

\end{document}

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

pgf 매뉴얼에서:

대신 옵션 을 사용하는 것이 훨씬 좋습니다 minimum size. 이 옵션을 사용하면 > Hagen이 노드에 있어야 하는 최소 크기를 지정할 수 있습니다. 더 긴 텍스트로 인해 노드가 실제로 더 커야 하는 경우 노드는 더 커지지만 텍스트가 비어 있으면 노드의 크기는 최소가 됩니다. 이 옵션은 또한 서로 다른 양의 텍스트를 포함하는 여러 노드가 동일한 크기를 갖도록 하는 데 유용합니다.

관련 정보