
我有一個帶有一些節點的圖表,我想在多個繪圖上重複這些節點。每個繪圖的節點位置都應該相同,但我想改變繪製的邊以及實際顯示或隱藏的節點。
目前我有類似的東西
\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);
.