
Im TikZ- und PGF-Handbuch für Version 3.0.1a heißt es in der Beschreibung des /tikz/every picture
Stils auf S. 125:
Sie sollten nicht verwenden, um Optionen direkt festzulegen. Wenn Sie beispielsweise standardmäßig
\tikzset
eine Linienbreite von verwenden möchten , versuchen Sie nicht , am Anfang Ihres Dokuments zu sagen. Dies funktioniert nicht, da die Linienbreite an vielen Stellen geändert wird. Sagen Sie stattdessen1pt
\tikzset{line width=1pt}
\tikzset{jedes Bild/.style={Zeilenbreite=1pt}}
Dies wird den gewünschten Effekt haben.
Warum wirkt sich eine Änderung der Linienstärke an vielen Stellen auf die direkte Option aus, nicht aber auf die gleiche Option innerhalb eines Stils?
Antwort1
TikZ richtet einen Standardargumentsatz zu Beginn jedesBild. Es nutzt das TeX-Verhalten vones wird nichts gelöscht sondern nur überschrieben.
Daher werden beim Einrichten des TikZ-Bildes auch Linienbreite, Standardfarbe usw. festgelegt, während gegen Ende der Initialisierung every ...
Tasten ausgeführt werden.
Ganz grob gesagt wird es also
\tikzset{ line width = 0.3 pt,
line join = miter,
...,
every picture,
every path,
every node
every label
...
}
(Ich rate nur die Reihenfolge, ich habe sie überhaupt nicht überprüft).
Es gibt also eine Reihenfolge für die every ...
Schlüssel und wenn einer von ihnen line width
einen Schlüssel enthält, überschreibt er die vorherigen und das ist, was angegeben wird.
Wenn dieser Schlüssel jedoch nur einmal festgelegt wird, wird er immer von vielen anderen Schlüsseln überschrieben.