von Bartman » Mi 3. Dez 2025, 08:25
Der Knoten
decisionPhantom bleibt ein Rechteck, da es der Voreinstellung entspricht und nicht geändert wurde. Du könntest, wie von mir auskommentiert gezeigt, den Stil
mynode auf den Hilfsknoten anwenden und den Rand nicht mehr zeichnen lassen.
Stattdessen empfehle ich Dir, den Schnittpunkt für die Position des Knoten
level3 mithilfe der von
TikZ erlaubten Angaben zu berechnen. Es gibt dafür in der Dokumentation reichlich Beispiele.
%-------------------------------------------------
% Vollständiges Minimalbeispiel (standalone)
%-------------------------------------------------
\documentclass[tikz,border=10pt]{standalone} % 1. Klasse „standalone“ mit TikZ‑Option
%\usepackage{tikz} % 2. Paket einbinden
\usetikzlibrary{positioning, arrows.meta} % 3. Bibliotheken für relative Platzierung & Pfeilköpfe
\begin{document}
\begin{tikzpicture}[
node distance=4em, % Abstand zwischen Knoten
mynode/.style={ % Stil für alle Kästchen
% rectangle,
draw,
text width=6em,
align=center,
minimum height=4em
},
myarrow/.style={ % Stil für die Pfeile
->,
>=latex, % korrekter Pfeilkopf
shorten > =1pt
}
]
%--- Knoten ----------------------------------------------------
\node[mynode] (attitude1) {Attitude};
\node[mynode, below=of attitude1] (competencies2) {Competencies};
\node[mynode, right=of competencies2] (resources1) {Resources};
\node[mynode, right=of resources1] (attitude2) {Attitude};
\node[mynode, above=of attitude2] (competencies1) {Competencies};
\node[mynode, below=of resources1] (decision1) {Decision};
% Phantom‑Knoten, damit die linke Beschriftung von Ebene 3 richtig sitzt
% \node[mynode, below=of competencies2, draw=none] (decisionPhantom) {};
%--- Ebenen‑Beschriftungen ---------------------------------------
\node[left=of attitude1] (level1) {1.)};
\node[left=of competencies2] (level2) {2.)};
\node at (level2|-decision1) (level3) {3.)};
% \node[left=of decisionPhantom] (level3) {3.)};
%--- Verbindungen -----------------------------------------------
\draw[myarrow] (competencies2) -- node[above, sloped] {gain} (attitude1);
\draw[myarrow] (attitude2) -- node[above, sloped] {gain} (competencies1);
\draw[myarrow] (competencies2) -- node[above, sloped] {conduct} (decision1);
\draw[myarrow] (resources1) -- node[above, sloped] {conduct} (decision1);
\draw[myarrow] (attitude2) -- node[above, sloped] {conduct} (decision1);
\draw[myarrow] (competencies2) -- node[above, sloped, near start] {gain} (competencies1);
\draw[myarrow] (attitude2) -- node[above, sloped, near start] {gain} (attitude1);
% \draw[red] (level2) |- (decision1);% zur Veranschaulichung
\end{tikzpicture}
\end{document}
Der Knoten [tt]decisionPhantom[/tt] bleibt ein Rechteck, da es der Voreinstellung entspricht und nicht geändert wurde. Du könntest, wie von mir auskommentiert gezeigt, den Stil [tt]mynode[/tt] auf den Hilfsknoten anwenden und den Rand nicht mehr zeichnen lassen.
Stattdessen empfehle ich Dir, den Schnittpunkt für die Position des Knoten [tt]level3[/tt] mithilfe der von [doc]TikZ[/doc] erlaubten Angaben zu berechnen. Es gibt dafür in der Dokumentation reichlich Beispiele.
[code]%-------------------------------------------------
% Vollständiges Minimalbeispiel (standalone)
%-------------------------------------------------
\documentclass[tikz,border=10pt]{standalone} % 1. Klasse „standalone“ mit TikZ‑Option
%\usepackage{tikz} % 2. Paket einbinden
\usetikzlibrary{positioning, arrows.meta} % 3. Bibliotheken für relative Platzierung & Pfeilköpfe
\begin{document}
\begin{tikzpicture}[
node distance=4em, % Abstand zwischen Knoten
mynode/.style={ % Stil für alle Kästchen
% rectangle,
draw,
text width=6em,
align=center,
minimum height=4em
},
myarrow/.style={ % Stil für die Pfeile
->,
>=latex, % korrekter Pfeilkopf
shorten > =1pt
}
]
%--- Knoten ----------------------------------------------------
\node[mynode] (attitude1) {Attitude};
\node[mynode, below=of attitude1] (competencies2) {Competencies};
\node[mynode, right=of competencies2] (resources1) {Resources};
\node[mynode, right=of resources1] (attitude2) {Attitude};
\node[mynode, above=of attitude2] (competencies1) {Competencies};
\node[mynode, below=of resources1] (decision1) {Decision};
% Phantom‑Knoten, damit die linke Beschriftung von Ebene 3 richtig sitzt
% \node[mynode, below=of competencies2, draw=none] (decisionPhantom) {};
%--- Ebenen‑Beschriftungen ---------------------------------------
\node[left=of attitude1] (level1) {1.)};
\node[left=of competencies2] (level2) {2.)};
\node at (level2|-decision1) (level3) {3.)};
% \node[left=of decisionPhantom] (level3) {3.)};
%--- Verbindungen -----------------------------------------------
\draw[myarrow] (competencies2) -- node[above, sloped] {gain} (attitude1);
\draw[myarrow] (attitude2) -- node[above, sloped] {gain} (competencies1);
\draw[myarrow] (competencies2) -- node[above, sloped] {conduct} (decision1);
\draw[myarrow] (resources1) -- node[above, sloped] {conduct} (decision1);
\draw[myarrow] (attitude2) -- node[above, sloped] {conduct} (decision1);
\draw[myarrow] (competencies2) -- node[above, sloped, near start] {gain} (competencies1);
\draw[myarrow] (attitude2) -- node[above, sloped, near start] {gain} (attitude1);
% \draw[red] (level2) |- (decision1);% zur Veranschaulichung
\end{tikzpicture}
\end{document}[/code]