Использование позиционирования Tikz с onslide visible только внутри луча

#latex #beamer #tikz

#Латекс #beamer #tikz

Вопрос:

У меня есть следующее изображение: введите описание изображения здесь

и я хочу, чтобы его элементы отображались в определенном порядке в моей презентации beamer. На данный момент я пытаюсь сделать так, чтобы a_1, a_2 отображались на втором слайде. Я использую этот код:

 documentclass{beamer}
usepackage{textcomp}
usepackage{tikz}
usetheme{Madrid}
begin{document}
begin{frame}{}
 usetikzlibrary{shapes,arrows, positioning, calc}  
 
tikzset{%
  block/.style    = {rounded corners, draw, thick, circle, minimum height = 3em,
    minimum width = 3em, fill = yellow!50},
  point/.style    = {coordinate}, % Input
}
begin{tikzpicture}[auto, thick, node distance=2cm, >=triangle 45]
%node[block] (A1) at (0,0) {$A_1$};
%node[block, right  = 1cm of A1] (A2) {$A_2$};
node[below  = of A1] (a1) {{visible<2->{$a_1$}}};
node[below  = of A2] (a2) {{visible<2->{$a_2$}}};
node[below  = of A1] (a1) {$a_1$};
node[below  = of A2] (a2) {$a_2$};
draw[->] (A1.south)   (0,-0.3) --   (0, -1.3);
draw[->] (A2.south)   (0,-0.3) --   (0, -1.3);
end{tikzpicture}
end{frame}
end{document}
 

но все, что я получаю, это:

Я получаю ошибки типа: «неизвестный тип наконечника стрелки «треугольник 45″», а также «неизвестный оператор «o» или «of» в (из A1). Я впервые использую Tikz, и я не очень разбираюсь в инструментах beamer, таких как onslide, only или visible. Я думаю, что мог бы создавать разные изображения, по одному для каждого кадра, а затем добавлять их с помощью includegraphics и pause , но было бы более практично, если бы мне удалось добиться того же результата, не создавая разные изображения. Любая помощь была бы очень признательна.

Ответ №1:

  • загружайте свои библиотеки tikz в преамбулу, а не внутри фрейма
  • вы можете использовать overlay-beamer-styles библиотеку для управления внешним видом узлов
 documentclass{beamer}
usepackage{textcomp}
usepackage{tikz}
usetheme{Madrid}

 usetikzlibrary{shapes,arrows, positioning, calc}  
 usetikzlibrary{overlay-beamer-styles}
 
tikzset{%
  block/.style    = {rounded corners, draw, thick, circle, minimum height = 3em,
    minimum width = 3em, fill = yellow!50},
  point/.style    = {coordinate}, % Input
}


begin{document}
begin{frame}{}
begin{tikzpicture}[auto, thick, node distance=2cm, >=triangle 45]
node[block] (A1) at (0,0) {$A_1$};
node[block, right  = 1cm of A1] (A2) {$A_2$};
node[below  = of A1, visible on=<2->] (a1) {$a_1$};
node[below  = of A2, visible on=<2->] (a2) {$a_2$};
draw[->] (A1.south)   (0,-0.3) --   (0, -1.3);
draw[->] (A2.south)   (0,-0.3) --   (0, -1.3);
end{tikzpicture}
end{frame}
end{document}
 

введите описание изображения здесь

Комментарии:

1. А как насчет стрелок? Возможно ли заставить их отображаться вместе с a_1 и a_2?