
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? Hier 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?
Dies wurde mithilfe der pin
Funktion zum Beschriften von Knoten erstellt. Beachten Sie, dass ich Ihren Code aktualisiert habe, um ihn \tikzset
konsistent zu verwenden, da \tikzstyle
er 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}