Beschriften einer Kante in TikZ

Beschriften einer Kante in TikZ

Ich bin neu bei TikZ (und LaTeX) und versuche, ein Diagramm mit Knoten zu erstellen.

Ich habe das Handbuch gelesen und mit derselben Methode wie im Bild ein Diagramm erstellt. Ich möchte jetzt meine Kanten beschriften, aber wenn ich versuche, sie wie im Handbuch zu beschriften, funktioniert es nicht.

pgfmanual.pdf

Mein Code ist unten. Bitte helfen Sie!!

\begin{tikzpicture}
  [node/.style = {circle,draw}]
  \node[node] (B) {B};
  \node[node] (A) [below of=B, xshift = -20mm] {A}
    edge [-]  {1} (B); % would like to label this edge "1"
  \node[node] (C) [below of=B] {C}
    edge [-] {1} (A); % would like to label this edge "1"
  \node[node] (D) [below of=C] {D}
    edge [-] {1} (A); % would like to label this edge "1"
  \node[node] (E) [below of=B, xshift =  20mm] {E}
    edge [-] {1} (B) % would like to label this edge "1"
    edge [-] {1} (C) % would like to label this edge "1"
    edge [-] {1} (D); % would like to label this edge "1"
\end{tikzpicture}

Antwort1

Eine Möglichkeit besteht darin, die Bibliothek zu verwenden quotes. (Wenn Sie das babelPaket verwenden, müssen Sie auch die Bibliothek laden babel.)

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{quotes}
\begin{document}
\begin{tikzpicture}[node/.style = {circle,draw}]
  \node[node] (B) {B};
  \node[node] (A) [below of=B, xshift = -20mm] {A}
    edge [-,"1"] (B); % would like to label this edge "1"
  \node[node] (C) [below of=B] {C}
    edge [-,"1"] (A); % would like to label this edge "1"
  \node[node] (D) [below of=C] {D}
    edge [-,"1"] (A); % would like to label this edge "1"
  \node[node] (E) [below of=B, xshift =  20mm] {E}
    edge [-,"1"] (B) % would like to label this edge "1"
    edge [-,"1"] (C) % would like to label this edge "1"
    edge [-,"1"] (D); % would like to label this edge "1"
\end{tikzpicture}
\end{document}

Antwort2

Bei Verwendung der TikZ-Bibliotheken automata, positioningund quoteswerden Knoten und Pfade separat gezeichnet. Zur Positionierung der Knoten wird die in der positioningBibliothek festgelegte Syntax verwendet:

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{automata,
                positioning,
                quotes}
\begin{document}
    \begin{tikzpicture}[
node distance = 15mm, on grid,
every state/.style={semithick, minimum size=1em, inner sep=2pt},
every edge/.append style = {-},
every edge quotes/.append style = {auto, font=\footnotesize, inner sep=2pt}
                        ]
    \begin{scope}[nodes={state}]
\node (C)       {C};
\node (A) [ left=of C] {A};
\node (B) [above=of C] {B};
\node (E) [right=of C] {E};
\node (D) [below=of C] {D};
    \end{scope}
%
\path (A)   edge ["1"] (B)
      (B)   edge ["1"] (E)
      (E)   edge ["1"] (D) 
      (D)   edge ["1"] (A)
% 
      (A)   edge ["1"] (C) 
      (C)   edge ["1"] (E); 
    \end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen