Search code examples
latexnodesedgestikz

Tikz-Network Draw Edge without Node (Invisible Node) Latex


I want to draw an edge from a point below a node, to the node. Here is what I have so far:

\begin{tikzpicture}
\Vertex[x=0,label=1, size=1.2]{A} \Vertex[x=3,size=1.2,label=2]{B} \Vertex[x=6,size=1.2,label=3]{C}
\Edge[Direct,label=0.4,bend=20,fontscale=1.2](A)(B)
\Edge[Direct,label=0.6,bend=30](A)(C)
\Edge[Direct,label=0.25,bend=20](C)(B)
\end{tikzpicture}

Which yields:

I want to draw an arrow from about 3mm below node 1 directed to node 1

I want to draw an arrow from about 3mm below node 1 directed to node 1

\documentclass{article}
\usepackage{tikz-network}
\begin{document}
\begin{tikzpicture}
\Vertex[x=0,label=1, size=1.2]{A} \Vertex[x=3,size=1.2,label=2]{B} \Vertex[x=6,size=1.2,label=3]{C}
\Edge[Direct,label=0.4,bend=20,fontscale=1.2](A)(B)
\Edge[Direct,label=0.6,bend=30](A)(C)
\Edge[Direct,label=0.25,bend=20](C)(B)
\end{tikzpicture}
\end{document}

Solution

  • With the positioning library of tikz, you could create a dummy node below A at whatever distance you like and then draw the edge from this dummy node to A

    \documentclass{article}
    \usepackage{tikz-network}
    \usetikzlibrary{positioning}
    \begin{document}
    \begin{tikzpicture}
    \Vertex[x=0,label=1, size=1.2]{A} 
    \Vertex[x=3,size=1.2,label=2]{B} 
    \Vertex[x=6,size=1.2,label=3]{C}
    \node[below=1.5cm of A] (D) {};
    \Edge[Direct,label=0.4,bend=20,fontscale=1.2](A)(B)
    \Edge[Direct,label=0.6,bend=30](A)(C)
    \Edge[Direct,label=0.25,bend=20](C)(B)
    \Edge[Direct,label=0.25](D)(A)
    \end{tikzpicture}
    \end{document}
    

    enter image description here