Schließlich möchte ich ein Bild innerhalb eines Knotens eines größeren Bildes zeichnen. Da das Verschachteln tikzpicture
von s nicht empfohlen wird, dachte ich, dass die pic
Syntax eine praktische Alternative bietet.
Allerdings pic
scheint es bei Randknoten nicht so zu funktionieren wie gedacht: Im pic
Bild liegt der Randknoten dort, wo der Pfad endet und nicht dazwischen.
Kann jemand erklären, was hier los ist, und einen Ausweg vorschlagen?
\documentclass{article}
\usepackage{tikz}
\begin{document}
\tikzset{test/.pic={
\node (a) at (0,0) {a};
\node (b) at (3,0) {b};
\draw (a)--node{edge node} (b);
}
}
\begin{tikzpicture}
\pic {test};
\end{tikzpicture}
\begin{tikzpicture}
\node (a) at (0,0) {a};
\node (b) at (3,0) {b};
\draw (a)--node{edge node} (b);
\end{tikzpicture}
\end{document}
Antwort1
Leider habe ich keine Ahnung, was los ist, aber die Angabe der pos
Option für den Randknoten löst das Platzierungsproblem:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\tikzset{test/.pic={
\node (a) at (0,0) {a};
\node (b) at (3,0) {b};
\draw (a)--node[pos=0.5]{edge node} (b);
}
}
\begin{tikzpicture}
\pic {test};
\end{tikzpicture}
\begin{tikzpicture}
\node (a) at (0,0) {a};
\node (b) at (3,0) {b};
\draw (a)--node{edge node} (b);
\end{tikzpicture}
\end{document}