스타일에서 좌표 정의

스타일에서 좌표 정의

여러 그림에 걸쳐 반복하고 싶은 일부 노드가 있는 그래프가 있습니다. 노드의 배치는 모든 도면에서 동일해야 하지만 그려지는 가장자리와 실제로 표시되거나 숨겨지는 노드를 다양하게 만들고 싶습니다.

현재 나는 다음과 같은 것을 가지고 있습니다

        \node (a) at (0,0) {$æA$};
        \node (b) at (2.5,0) {$æB$};
        \node (c) at (1,-2) {$æC$};
        \node (d) at (2.2,-2.5) {$æD$};

모든 그림의 시작 부분에서 반복됩니다. 하지만 레이아웃을 변경하려면 이 코드를 모든 곳에서 업데이트해야 합니다.

이제 이 경우에 대한 매크로를 작성할 수 있습니다. 하지만 이것을 그림에 적용할 수 있는 스타일로 만들 수 있는지가 궁금합니다.

답변1

다음 해결책을 찾았습니다. 이는 유용할 좌표를 정의하지 않지만 스타일을 통해 위치를 제공합니다.

먼저 다음을 사용하여 위치를 설정하는 스타일을 정의합니다 at.

\tikzset{
  layout/.style={
    a/.style={at={(0,0)}},
    b/.style={at={(2.5,0)}},
    c/.style={at={(1,-2)}},
    d/.style={at={(2.2,-2.5)}}
  }
}

그런 다음 각 그림에 대해 다음을 수행합니다.

\begin{tikzpicture}[layout]{
  \node[a] (a) {A};
  \node[b] (b) {B};
  \node[c] (c) {C};
  \node[d] (d) {D};
}

노드를 숨기려면 \node[a] (a) {};으로 변경합니다 \coordinate[a] (a);.

관련 정보