Wie zeichne ich einen Pfeil in meine Abbildung, sodass der Pfeil auf einen bestimmten Knoten zeigt?

Wie zeichne ich einen Pfeil in meine Abbildung, sodass der Pfeil auf einen bestimmten Knoten zeigt?

Ich habe eine Graphenabbildung mit 8 Knoten. Ich möchte Pfeile zeichnen, die auf einige der Knoten zeigen (zum Beispiel möchte ich Pfeile zeichnen, die auf 4 der Knoten zeigen). Außerdem möchte ich neben jeden Pfeil einen Text schreiben. Dazu habe ich diese Webseite verwendet:http://en.wikibooks.org/wiki/LaTeX/Bild#Pfeileund ich dachte, ich müsste jeden Pfeil einzeln schreiben und die Platzierung manuell festlegen. Allerdings kann ich den Pfeil nicht von der Position verschieben, an der er ist. Irgendwelche Ideen? Das ist das ErgebnisHier ist der vollständige Code, den ich verwendet habe:

 \\documentclass[11pt]{article}
\usepackage{tikz}
\usepackage{caption}
\usepackage{subcaption}
\begin{document}
\tikzset{%
   point/.style = {fill=black,inner sep=1pt, circle, minimum width=3pt,align=right,rotate=60},
   } 
\tikzstyle{weight} = [font=\scriptsize]  
\tikzstyle{vertex}=[circle,fill=blue!20]

\makeatletter
\setlength{\@fptop}{0pt}
\makeatother

\section{Some section}

\begin{figure}
 \centering
 \begin{subfigure}{0.5\textwidth}
 \resizebox{0.7\textwidth}{!}{
 \begin{tikzpicture}
  [scale=.8,auto=right]
      \put(0,10){\vector(1,0){20}}
      \node[vertex] (v1) at (1,10)  {$a$};
      \node[vertex] (v2) at (1,8)  {$b$};
      \node[vertex] (v3) at (1,6)  {$c$};
      \node[vertex] (v4) at (1,4)  {$d$};
      \node[vertex] (v5) at (8,10)  {$e$};
      \node[vertex] (v6) at (8,8)  {$f$};
      \node[vertex] (v7) at (8,6)  {$g$};
      \node[vertex] (v8) at (8,4)   {$h$};

     \draw[->] (v1)--(v8);
     \draw[->] (v1)--(v5);
     \draw[->] (v2)--(v5);
     \draw[->] (v2)--(v6);
     \draw[->] (v3)--(v6);
     \draw[->] (v3)--(v7);
     \draw[->] (v4)--(v7);
     \draw[->] (v4)--(v8);
 \end{tikzpicture}
 }

 \caption{I want to place the arrow s.t. it will point to node "a". Also I want to insert some text above the arrow}
    \label{fig:1}
    \end{subfigure}
    \hspace{4em}%
    \caption{I want to place the arrow s.t. it will point to node "a". Also I want to insert some text above the arrow.}\label{fig:animals}
\end{figure}




\end{document}

Antwort1

Möglicherweise so etwas?

Fixierter Knoten

Dies wurde mithilfe der pinFunktion zum Beschriften von Knoten erstellt. Beachten Sie, dass ich Ihren Code aktualisiert habe, um ihn \tikzsetkonsistent zu verwenden, da \tikzstyleer veraltet ist.

\documentclass[tikz, border=10pt]{standalone}

\begin{document}

  \tikzset{%
    point/.style = {fill=black,inner sep=1pt, circle, minimum width=3pt,align=right,rotate=60},
    weight/.style={font=\scriptsize},
    vertex/.style={circle,fill=blue!20}
  }

  \begin{tikzpicture}
    [scale=.8,auto=right]
    \put(0,10){\vector(1,0){20}}
    \node[vertex, pin={[pin edge=<-, pin distance=10pt]105:{Label Here}}] (v1) at (1,10)  {$a$};
    \node[vertex] (v2) at (1,8)  {$b$};
    \node[vertex] (v3) at (1,6)  {$c$};
    \node[vertex] (v4) at (1,4)  {$d$};
    \node[vertex] (v5) at (8,10)  {$e$};
    \node[vertex] (v6) at (8,8)  {$f$};
    \node[vertex] (v7) at (8,6)  {$g$};
    \node[vertex] (v8) at (8,4)   {$h$};

    \draw[->] (v1)--(v8);
    \draw[->] (v1)--(v5);
    \draw[->] (v2)--(v5);
    \draw[->] (v2)--(v6);
    \draw[->] (v3)--(v6);
    \draw[->] (v3)--(v7);
    \draw[->] (v4)--(v7);
    \draw[->] (v4)--(v8);

  \end{tikzpicture}

\end{document}

verwandte Informationen