Обзор: TikZ и beamer

Обзорный урок о двух больших мирах поверх LaTeX: векторная графика TikZ и презентации beamer.

TikZ — язык рисования векторной графики прямо в LaTeX; beamer — класс для создания слайдов средствами LaTeX.

LaTeX — это не только текст и формулы. На нём можно рисовать схемы и графики (TikZ) и делать презентации (beamer). Полное освоение каждого — отдельный курс; здесь — обзор, чтобы знать о возможностях.

TikZ: рисунки кодом

В TikZ вы описываете фигуры командами, а получаете чёткую векторную графику, идеально сочетающуюся со шрифтами и формулами документа:

\usepackage{tikz}
...
\begin{tikzpicture}
  \draw[->] (0,0) -- (3,0) node[right] {$x$};
  \draw[->] (0,0) -- (0,2) node[above] {$y$};
  \draw[thick,blue] (0,0) -- (2,1.5);
  \fill (2,1.5) circle (2pt) node[above] {$A$};
\end{tikzpicture}
y
^            * A
|        .
|     .
|  .
+----------> x

Команда \draw рисует линии и стрелки, \fill заливает фигуры, координаты задаются в скобках, а в node можно вставлять текст и формулы. Поверх TikZ построен pgfplots — пакет для научных графиков прямо из данных или функций:

\begin{axis}
  \addplot {x^2};   % график параболы
\end{axis}

Преимущество перед вставкой картинки: график векторный, использует те же шрифты, что и текст, и редактируется как код (можно версионировать в git).

beamer: слайды на LaTeX

В beamer каждый слайд — это окружение frame. Класс сам оформляет заголовки, списки и навигацию по выбранной теме:

\documentclass{beamer}
\usetheme{Madrid}
\begin{document}
\begin{frame}{Заголовок слайда}
  \begin{itemize}
    \item Первый тезис
    \item Формула прямо на слайде: $E = mc^2$
  \end{itemize}
\end{frame}
\end{document}

Главный плюс beamer для учёного — формулы на слайдах выглядят так же безупречно, как в статье. Механизм overlay позволяет показывать элементы по очереди (по нажатию): \item<1->, \item<2-> и т.п. — пункты появляются пошагово.

Как работает под капотом

TikZ — это надстройка над низкоуровневым графическим слоем PGF: ваши команды превращаются в инструкции рисования, которые движок вписывает прямо в PDF как векторные пути. beamer — это класс документа, который переопределяет страницу как «слайд» формата 4:3 или 16:9, а каждый frame может разворачиваться в несколько PDF-страниц для overlay-эффектов. И то и другое использует обычный движок LaTeX — никаких внешних программ, всё собирается тем же pdflatex/xelatex.

Координаты, узлы и пути в TikZ

В основе TikZ лежит идея путей: вы перечисляете точки и говорите, как их соединить. Координаты бывают декартовыми ((2,1.5) в сантиметрах по умолчанию) и полярными ((30:2) — угол и радиус), а ещё им можно давать имена и ссылаться позже. Отдельная сила инструмента — узлы (node): это прямоугольнички с текстом, формулой или картинкой внутри, которые можно располагать у точки и соединять стрелками; на узлах строят блок-схемы, графы и диаграммы состояний. Параметры в квадратных скобках управляют видом: thick, dashed, цвет, стрелки ->. Полезно знать про библиотеки TikZ (arrows.meta, positioning, calc) — они подключаются через \usetikzlibrary и добавляют новые виды стрелок, удобное относительное позиционирование узлов и арифметику над координатами.

pgfplots и ускорение через externalization

Надстройка pgfplots превращает TikZ в полноценный построитель научных графиков. Окружение axis само рисует оси, сетку, легенду и засечки, а \addplot строит кривую либо по формуле, либо прямо из таблицы данных — например из CSV-файла эксперимента через \addplot table {data.csv}. Так график живёт рядом с текстом, использует те же шрифты и пересобирается при изменении данных без ручной перерисовки. Расплата за всё это — скорость: сложные рисунки заметно замедляют компиляцию. Здесь спасает externalization (библиотека external): TikZ единожды собирает каждый рисунок в отдельный PDF и при последующих сборках просто вставляет готовую картинку, пока её исходник не изменился. Для больших документов с десятками графиков это сокращает время сборки в разы.

beamer: оверлеи, темы и формат экрана

Сила beamer — в управлении появлением элементов. Помимо записи вида \item<2-> есть команды \pause (всё ниже появится по следующему щелчку) и \only/\onslide для показа фрагмента лишь на части «подкадров». Каждый такой шаг beamer делает отдельной PDF-страницей, поэтому презентация остаётся обычным PDF и открывается где угодно. Внешний вид задаёт тема через \usetheme (Madrid, Berlin, Frankfurt и другие), а цвета — \usecolortheme; тема разом оформляет заголовки, списки, нижнюю панель навигации и поля. Формат экрана выбирается опцией класса: по умолчанию слайды 4:3, а для современных проекторов и мониторов пишут \documentclass[aspectratio=169]{beamer}, получая широкие слайды 16:9. Заголовок презентации, автора и дату задают как обычно через \title, \author, а титульный кадр печатают командой \titlepage внутри первого frame.

Частые ошибки

  • Сложный TikZ замедляет компиляцию — тяжёлые рисунки выносят в отдельные файлы или кэшируют.
  • Перегруженные слайды beamer текстом — презентация не статья, тезисы должны быть краткими.
  • Забыть \usetheme — слайды будут в безликом стандартном оформлении.

Итоги

  • TikZ рисует векторную графику кодом; pgfplots — научные графики поверх TikZ.
  • beamer делает слайды (окружение frame) с теми же безупречными формулами.
  • overlay в beamer показывает элементы пошагово; обе системы собираются обычным движком.
Проверьте себя
1. Что такое TikZ?
AПакет таблиц
BЯзык рисования векторной графики и схем прямо в LaTeX
CСтиль библиографии
DОнлайн-редактор
2. Что представляет собой один слайд в beamer?
AКоманду \slide
BОкружение frame
CОтдельный файл
DРаздел \section
3. Главное преимущество beamer для учёного?
AСлайды весят меньше
BФормулы на слайдах выглядят так же безупречно, как в статье
Cbeamer не требует компиляции
DВ нём есть анимация видео