tikz 中的边缘不可见性

tikz 中的边缘不可见性

我想知道我们如何才能使 tikz 中的边不可见(类似于可见)。这是我的代码。我可以使用可见命令添加边 (1,4) 和 (4,5),同时我想删除边 (1,5),但我无法做到这一点。请帮助我。

\begin{tikzpicture
 [scale=.5,auto=left,minimum size=2mm,inner sep=0pt,outer sep=0pt,every                 node/.style={circle,fill=blue!60}]
\node (n1)[fill=red] at (0,0)  {1};
\node (n2) at (2,0)  {2};
\node (n3) at (0,2)  {3};
\node (n4)[fill=red] at (2,2)  {4};
\node (n5)[fill=red] at (4,-2)  {5};
\foreach \from/\to  in {n1/n2,n1/n5,n1/n3,n2/n4,n2/n5,n3/n4}
\draw (\from) -- (\to);
\invisible<2->{ (n1) to  (n5);}
\visible<2->{\draw (n1) to  (n4);}
\visible<2->{\draw (n4) to (n5);}
\end{tikzpicture}

答案1

第一个\visible命令来自beamernot tikz。您可以使用循环\anim内的第三个变量\foreach来控制边缘的出现。

代码

\documentclass{beamer}
\usepackage{tikz}

\begin{document}

\begin{frame}
\centering
\begin{tikzpicture}
 [scale=.5,auto=left,minimum size=2mm,inner sep=0pt,outer sep=0pt,every node/.style={circle,fill=blue!60}]
\node (n1)[fill=red] at (0,0)  {1};
\node (n2) at (2,0)  {2};
\node (n3) at (0,2)  {3};
\node (n4)[fill=red] at (2,2)  {4};
\node (n5)[fill=red] at (4,-2)  {5};
\foreach \from/\to/\anim  in {n1/n2/1-,n1/n5/1,n1/n3/1-,n1/n4/2-,n2/n4/1-,n2/n5/1-,n3/n4/1-,n4/n5/2-}
{\visible<\anim>{\draw (\from) -- (\to);}}
\end{tikzpicture}
\end{frame}

\end{document}

相关内容