我想知道我们如何才能使 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
命令来自beamer
not 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}