解决 TikZ 图片中的叠加规范

解决 TikZ 图片中的叠加规范

我正在创建思维导图以供演示使用作为参考思维导图 tikzpicture 在 beamer 中 (逐步显示)。我的代码是:

\documentclass{beamer}
\usepackage{lmodern}
\usetheme{Copenhagen}

\usepackage{tikz}
\usetikzlibrary{mindmap}

\tikzset{
    invisible/.style={opacity=0},
    visible on/.style={alt=#1{}{invisible}},
    alt/.code args={<#1>#2#3}{%
    \alt<#1>{\pgfkeysalso{#2}}{\pgfkeysalso{#3}}
  },
}

\tikzset{level 1 concept/.append style={font=\sf, sibling angle=90,level distance = 25mm}}
\tikzset{every node/.append style={scale=0.6,text=white}}

\begin{document}
\begin{frame}{Title}
\begin{center}
\begin{tikzpicture}[mindmap,text=white, concept color=blue]
\node[concept,visible on=<1->]{Root Concept}[clockwise from=315]
 child [concept color=violet,visible on=<2,3>] {node[concept] (c1){Child 1}                                
 }
 child [concept color=orange,visible on=<3>]{node [concept](c2){Child 2}
 };
\end{tikzpicture}
\end{center}
\end{frame}

\end{document}

这会导致错误:

! Argument of \pgfkeys@code has an extra }.
<inserted text> 
                \par 
l.38 \end{frame}

我怀疑问题出现在以下方面:

child [concept color=violet,visible on=<2,3>] {node[concept] (c1){Child 1}}

特别是在存在的情况下<2,3>(只需书写<2><2->编译就可以),但我看不到任何方法可以解决它,甚至(最糟糕的是)我不明白这个错误背后的原因。

答案1

child  [concept color=violet,visible on=<{3,4}>] {node [concept](c13){Child 1-3}}

您的代码运行良好。

相关内容