我想在沿箭头 (1) 定义的节点中连接两个箭头 (1) 和 (2)。例如,在下图中,我想创建一个从 (z) 到 (y) 的箭头,该箭头连接从 (x) 到 (y) 的箭头,其中表示“此处”。请注意,“此处”定义为相对于 (x) 和 (y) 之间路径的节点。
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
\begin{document}
\begin{tikzpicture}
\tikzstyle{every node}=[draw,shape=ellipse];
\node (node1) at (150:3) {x};
\node (node2) at ( 30:3) {y};
\node (node3) at ( 270:0) {z};
\path[->,>=stealth',shorten >=1pt,semithick,
every node/.style={align=center}] (node1) edge [out=-20, in=-160] node[pos=0.75] {here} (node2);
\end{tikzpicture}
\end{document}
答案1
您已经在那里了,只需使用 acoordinate
而不是 a node
at pos=0.75
。
也可以看看:应该使用 \tikzset 还是 \tikzstyle 来定义 TikZ 样式?
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
\begin{document}
\begin{tikzpicture}[
every node/.style={draw,shape=ellipse},
every path/.style={->,>=stealth',shorten >=1pt,semithick}
]
\node (node1) at (150:3) {x};
\node (node2) at ( 30:3) {y};
\node (node3) at ( 270:0) {z};
\path (node1) edge[out=-20, in=-160] coordinate[pos=0.75] (here) (node2);
\path (node3) edge[bend right] (here);
\end{tikzpicture}
\end{document}