TikZ を使用してグラフ内の頂点の後のエッジを取得するにはどうすればよいでしょうか?

TikZ を使用してグラフ内の頂点の後のエッジを取得するにはどうすればよいでしょうか?

次のコードはグラフを示しています。一度に全体のグラフを表示するのではなく、エッジを次々に表示する方法を示しています。

\begin{figure}
\begin{tikzpicture}
  [scale=.8,auto=left,every node/.style={circle,fill=blue!20}]
  %\node (n6) at (1,10) {6};
  \node (n4) at (3,4)  {4};
  \node (n5) at (3,2)  {5};
  \node (n1) at (1.5,2)  {1};
  \node (n2) at (3,6)  {2};
  \node (n3) at (4.5,2)  {3};

  \foreach \from/\to in {n2/n4,n4/n3,n4/n5,n4/n1}
    \draw (\from) -- (\to);
\draw (n2) to [out=-20,in=35] (n3);
\draw (n2) to [out=200,in=135] (n1);
\draw (n2) to [out=-20,in=35] (n5);
\end{tikzpicture}
\caption{Closure of a Tree}
\end{figure}

答え1

TikZ コマンドはオーバーレイを認識しているという事実を利用できます (\visible図が「飛び回る」のを防ぐために、曲がった矢印に使用しました)。

\documentclass{beamer}
\usepackage{tikz}
\usetikzlibrary{shapes.arrows}

\begin{document}

\begin{frame}
\begin{figure}
\centering
\begin{tikzpicture}
  [scale=.8,auto=left,every node/.style={circle,fill=blue!20}]
  %\node (n6) at (1,10) {6};
  \node (n4) at (3,4)  {4};
  \node (n5) at (3,2)  {5};
  \node (n1) at (1.5,2)  {1};
  \node (n2) at (3,6)  {2};
  \node (n3) at (4.5,2)  {3};

  \foreach \from/\to [count=\xi from 2] in {n2/n4,n4/n3,n4/n5,n4/n1}
    \draw<\xi-> (\from) -- (\to);
\visible<6->{\draw (n2) to [out=-20,in=35] (n3);}
\visible<7->{\draw (n2) to [out=200,in=135] (n1);}
\draw<8-> (n2) to [out=-20,in=35] (n5);
\end{tikzpicture}
\caption{Closure of a Tree}
\end{figure}
\end{frame}

\end{document}

ここに画像の説明を入力してください

関連情報