Обзор: 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 показывает элементы пошагово; обе системы собираются обычным движком.