可能重复:
使用 TikZ 合并箭头
有没有办法连接两个箭头?它们应该从两个不同的节点开始,连接并指向第三个节点。那太好了!
这里有一个简单的例子:
\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[->] (node1) edge [out=-20, in=100,draw=gruen,line width=2pt] (30:1);
\path[->] (node2) edge [out=200, in=80] (node3);
\end{tikzpicture}
我可以尝试直到我得到连接发生的近似坐标,但如果我想稍后更改节点的位置,那将会是一个问题。
编辑
我希望这样:
X ------ -------> Z
Y ------/
不是最好的草图。但正如 percusse 提到的,链接的问题也应该可以回答我的问题。
答案1
感谢 percusse!我没有找到这个问题……我现在的解决方案是这样的:
\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};
\coordinate (zJoin) at ([yshift=0.5cm]node3.north);
\draw[->] (zJoin) -- (node3); % the arrow
\path (node1) edge [out=-20, in=100,draw=gruen,line width=2pt] (zJoin);
\path (node2) edge [out=200, in=80] (zJoin);
\end{tikzpicture}
答案2
您可以选择节点中两个箭头汇合的特定点。
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes}
\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[->] (node1) edge [out=-20, in=100,draw=green,line width=2pt] (node3.north);
\path[->] (node2) edge [out=200, in=80] (node3.north);
\end{tikzpicture}
\end{document}