1

I want to join two arrows (1) and (2) in a node defined along arrow (1). For example, in the following figure, I want to create an arrow from (z) to (y) that joins the arrow from (x) to (y) where is says "here". Note that "here" is defined as a node relative to the path between (x) and (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}

enter image description here

kmundnic
  • 207

1 Answers1

3

You're already there, just use a coordinate instead of a node at pos=0.75.

See also: Should \tikzset or \tikzstyle be used to define TikZ styles?

\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}

enter image description here

CarLaTeX
  • 62,716