Урок 1.3. Списки и таблицы простой верстки

Осваиваем три типа списков (маркированные, нумерованные, описания) и учимся верстать таблицы профессионального уровня с пакетом booktabs. Разбираем готовые шаблоны для оформления результатов экспериментов и сравнительного анализа.

⏱ 20 мин изучения
Прогресс курса 0%

Списки и таблицы – два главных инструмента структурирования информации в любом документе. В LaTeX они создаются через специальные окружения и дают вам полный контроль над оформлением. В этом уроке разберем все типы списков и научимся верстать таблицы профессионального уровня.

Клабаутерман
Клабаутерман:

В LaTeX есть три типа списков: маркированные, нумерованные и списки описаний. Каждый тип имеет свое окружение и свое назначение. Давайте разберем их по порядку.

Маркированные списки (itemize)

Используются, когда порядок элементов не важен. Каждый пункт начинается с команды \item, а маркер (точку, тире или символ) LaTeX добавляет автоматически.

LaTeX
\begin{itemize}
    \item Первый элемент списка
    \item Второй элемент списка
    \item Третий элемент списка
\end{itemize}

Нумерованные списки (enumerate)

Используются, когда порядок важен: шаги алгоритма, этапы исследования, пункты плана. LaTeX автоматически нумерует пункты арабскими цифрами.

LaTeX
\begin{enumerate}
    \item Сбор и анализ литературы
    \item Разработка методологии
    \item Проведение экспериментов
    \item Анализ результатов
    \item Формулировка выводов
\end{enumerate}
Клабаутерман
Клабаутерман:

Вложенные списки нумеруются автоматически: первый уровень – цифры, второй – буквы, третий – римские цифры. Это стандартное поведение LaTeX, и его не нужно настраивать вручную.

LaTeX
\begin{enumerate}
    \item Первый уровень
    \begin{enumerate}
        \item Второй уровень
        \begin{enumerate}
            \item Третий уровень
            \item Еще один пункт третьего уровня
        \end{enumerate}
        \item Снова второй уровень
    \end{enumerate}
    \item Возвращаемся на первый уровень
\end{enumerate}

Списки описаний (description)

Используются для глоссариев, определений, списков терминов. Каждый пункт начинается с \item[термин], после которого идет описание.

LaTeX
\begin{description}
    \item[LaTeX] – система компьютерной верстки документов
    \item[Overleaf] – облачная среда для работы с LaTeX
    \item[BibTeX] – система управления библиографией
    \item[PDF] – формат документов, в который компилируется LaTeX
\end{description}
Клабаутерман
Клабаутерман:

Смешивать типы списков можно свободно: внутри нумерованного списка может быть маркированный, и наоборот. Главное – правильно закрывать окружения в обратном порядке.

LaTeX
\begin{enumerate}
    \item Этапы исследования:
    \begin{itemize}
        \item Обзор литературы
        \item Сбор данных
        \item Анализ результатов
    \end{itemize}
    \item Инструменты, которые мы использовали:
    \begin{description}
        \item[Python] для обработки данных
        \item[LaTeX] для оформления статьи
        \item[Git] для контроля версий
    \end{description}
\end{enumerate}

Настройка списков с пакетом enumitem

По умолчанию списки выглядят стандартно. Но с пакетом enumitem мы можем гибко настраивать маркеры, отступы и нумерацию.



 

Клабаутерман
Клабаутерман:

Пакет enumitem – один из самых полезных для работы со списками. Он позволяет создавать компактные списки (nosep), настраивать отступы (leftmargin) и даже продолжать прерванный список (resume). Подробнее о возможностях пакета – в документации.

LaTeX
\usepackage{enumitem}

% Изменение маркера в маркированном списке
\begin{itemize}[label=$\bullet$]
    \item Стандартный маркер
    \item Еще один пункт
\end{itemize}

% Изменение маркера на тире
\begin{itemize}[label=---]
    \item Пункт с тире
    \item Еще один пункт с тире
\end{itemize}

% Изменение нумерации
\begin{enumerate}[label=\textbf{\arabic*.}]
    \item Жирные цифры
    \item Еще один пункт
\end{enumerate}

% Нумерация заглавными буквами
\begin{enumerate}[label=\Alph*.]
    \item Пункт A
    \item Пункт B
    \item Пункт C
\end{enumerate}

% Убираем отступы (компактный список)
\begin{itemize}[nosep]
    \item Пункт без отступов между элементами
    \item Еще один пункт
    \item И еще один
\end{itemize}

Таблицы: базовое окружение tabular

Таблицы в LaTeX создаются через окружение tabular. Вы задаете структуру таблицы в аргументе: количество колонок и их выравнивание.

LaTeX
\begin{tabular}{lcr}
    Левый & Центр & Правый \\
    текст & текст & текст \\
    123 & 456 & 789 \\
    aaa & bbb & ccc \\
\end{tabular}

Спецификаторы колонок:

  • l – выравнивание по левому краю

  • c – выравнивание по центру

  • r – выравнивание по правому краю

  • | – вертикальная линия между колонками

  • p{ширина} – колонка фиксированной ширины с переносом текста

Клабаутерман
Клабаутерман:

Команды \hline создают горизонтальные линии. Разделители строк – \\. Внутри ячеек текст разделяется символом &. Обратите внимание: в обычных tabular текст не переносится автоматически, если не указана ширина колонки через p{}.

LaTeX
% Таблица с вертикальными разделителями
\begin{tabular}{|l|c|r|}
    \hline
    Имя & Возраст & Город \\
    \hline
    Анна & 25 & Москва \\
    Борис & 30 & Санкт-Петербург \\
    Виктор & 28 & Саратов \\
    \hline
\end{tabular}

% Таблица с колонкой фиксированной ширины
\begin{tabular}{lp{5cm}}
    Термин & Определение \\
    \hline
    LaTeX & Система компьютерной верстки документов, созданная Лесли Лэмпортом \\
    Overleaf & Облачная платформа для совместной работы с LaTeX-документами \\
\end{tabular}

Профессиональные таблицы с пакетом booktabs

В научной литературе вертикальные разделители в таблицах не используются – это считается дурным тоном. Вместо них применяют тонкие и толстые горизонтальные линии из пакета booktabs.

Клабаутерман
Клабаутерман:

Три главные команды booktabs: \toprule (толстая линия сверху), \midrule (тонкая линия в середине), \bottomrule (толстая линия снизу). Такие таблицы выглядят чисто и профессионально – именно так оформлены таблицы в ведущих научных журналах.

LaTeX
\usepackage{booktabs}

\begin{tabular}{lrr}
    \toprule
    Алгоритм & Сложность (средняя) & Память \\
    \midrule
    Bubble Sort & $O(n^2)$ & $O(1)$ \\
    Quick Sort & $O(n \log n)$ & $O(\log n)$ \\
    Merge Sort & $O(n \log n)$ & $O(n)$ \\
    Heap Sort & $O(n \log n)$ & $O(1)$ \\
    \bottomrule
\end{tabular}

Таблица как плавающий объект

Чтобы добавить подпись, номер и возможность ссылки, таблицу оборачивают в окружение table. Это делает её «плавающим объектом» – LaTeX сам решит, где лучше разместить таблицу на странице.

LaTeX
\usepackage{booktabs}

Таблица \ref{tab:algorithms} показывает сравнение алгоритмов сортировки.

\begin{table}[ht]
    \centering
    \caption{Сравнение алгоритмов сортировки}
    \label{tab:algorithms}
    \begin{tabular}{lrr}
        \toprule
        Алгоритм & Сложность & Память \\
        \midrule
        Bubble Sort & $O(n^2)$ & $O(1)$ \\
        Quick Sort & $O(n \log n)$ & $O(\log n)$ \\
        Merge Sort & $O(n \log n)$ & $O(n)$ \\
        \bottomrule
    \end{tabular}
\end{table}

Параметры размещения плавающего объекта:

  • h – here (здесь, если возможно)

  • t – top (сверху страницы)

  • b – bottom (снизу страницы)

  • p – page (отдельная страница для плавающих объектов)

  • H (из пакета float) – жестко здесь, без исключений

Клабаутерман
Клабаутерман:

Параметр [H] из пакета float – палочка-выручалочка, когда нужно жестко зафиксировать таблицу в конкретном месте. Но злоупотреблять им не стоит: LaTeX обычно лучше вас знает, где таблица будет смотреться органичнее.

LaTeX
\usepackage{float}

% Жесткая привязка таблицы к месту в тексте
\begin{table}[H]
    \centering
    \caption{Результаты эксперимента}
    \begin{tabular}{lcc}
        \toprule
        Параметр & Значение 1 & Значение 2 \\
        \midrule
        Точность & 0.92 & 0.95 \\
        Время (с) & 1.2 & 0.8 \\
        \bottomrule
    \end{tabular}
\end{table}

Готовый шаблон: таблица результатов эксперимента

Вот шаблон, который вы можете использовать в своей научной статье. Он оформлен по всем правилам академического стиля.

Клабаутерман
Клабаутерман:

В этом шаблоне использованы: \multirow для объединения строк по вертикали, \multicolumn для объединения колонок, \cmidrule для частичной горизонтальной линии и \textbf для выделения лучших результатов. Это профессиональный уровень оформления таблиц.

LaTeX
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{float}

\begin{table}[H]
    \centering
    \caption{Результаты сравнительного анализа методов}
    \label{tab:results}
    \begin{tabular}{lccc}
        \toprule
        \multirow{2}{*}{Метод} & \multicolumn{2}{c}{Качество} & \multirow{2}{*}{Время, с} \\
        \cmidrule(lr){2-3}
        & Точность & F1-мера & \\
        \midrule
        Базовый & 0.85 & 0.82 & 1.5 \\
        Улучшенный & 0.92 & 0.90 & 2.1 \\
        Предложенный & \textbf{0.95} & \textbf{0.93} & 1.8 \\
        \bottomrule
    \end{tabular}
\end{table}

Советы по работе со списками и таблицами

  1. Не вкладывайте списки глубже 3 уровней. Это затрудняет восприятие. Если нужно больше уровней – разбейте на отдельные разделы.

  2. Избегайте вертикальных линий в таблицах. В академическом стиле они считаются дурным тоном. Используйте booktabs.

  3. Выравнивайте числа по правому краю. В колонках с числами используйте r – так цифры выстроятся по разрядам и будут легче читаться.

  4. Добавляйте подпись и метку. Каждая таблица должна иметь \caption и \label для возможности ссылки на неё из текста.

  5. Используйте \centering внутри плавающих объектов. Это центрирует таблицу или рисунок на странице.

Клабаутерман
Клабаутерман:

Теперь вы умеете создавать списки любой сложности и верстать таблицы профессионального уровня. В следующем уроке мы разберем автоматическое оглавление и перекрестные ссылки – ключевой инструмент для связывания частей большого документа. А пока попробуйте сверстать таблицу с результатами вашего исследования или список этапов вашей работы.

 

← Вернуться к модулю
На сайте используется Яндекс.Метрика для сбора обезличенной статистики посещаемости и улучшения качества работы сайта. Подробнее — в Политике обработки персональных данных .