Date Редакция Категория comp Теги LaTeX / таблицы

Перед вами две таблицы:

latex.png

booktabs.png

Какая из них нравится вам больше?

Верхняя таблица набрана стандартными средствами LaTeX

\begin{tabular}{|l|l|l|}
  \hline
  ИСЗ & Дата запуска & Масса, кг      \\ \hline
  Спутник-1 & 4 октября 1957 & 83,6   \\ \hline
  Спутник-2 & 3 ноября 1957 & 508,3   \\ \hline
  Эксплорер-1 & 1 февраля 1958 & 21,5 
  \hline
\end{tabular}

и если вам приглянулась она, то эту статью можно дальше не читать.

Нижняя таблица выполнена с помощью пакета booktabs и если результат вам понравился, то мы поговорим о возможностях этого пакета и рассмотрим несколько советов, позволяющих создавать более ясные таблицы.

Бросается в глаза отсутствие в последней таблице вертикальных линий, но оно не связано к booktabs и мы поговорим о нём позже. А вот что к booktabs относится...

Более "говорящие" названия горизонтальных линий -- \toprule, \midrule, \bottomrule (top -- верхний, mid -- средний, bottom -- нижний) -- заменили безликие \hline.

Эти горизонтальные линии различны по толщине: внешние \toprule и \bottomrule толще, чем внутренние (\midrule и другие -- в booktabs есть ещё несколько видов линий). Это позволяет более чётко отделить таблицу от остального текста.

Увеличенные вертикальные пробелы в заголовке таблицы (между \toprule и \midrule). Сравните оформление заголовка стандартными средствами

head_latex.png

и оформление, использующее booktabs

head_booktabs.png

Кроме того, заголовок в booktabs центрирован по вертикали, что также добавляет ему читаемости.

Полностью, код выглядит так:

\begin{tabular}{lll}
    \toprule
    ИСЗ & Дата запуска & Масса, кг       \\   
    \midrule
    Спутник-1 & 4 октября 1957 & 83,6    \\ 
    Спутник-2 & 3 ноября 1957 & 508,3    \\ 
    Эксплорер-1 & 1 февраля 1958 & 21,5  \\
    \bottomrule
\end{tabular}

Как видим, он не сильно изменился. Чего не скажешь о результате.

А теперь обещанные советы по оформлению таблиц.

  1. Избегайте лишних горизонтальных линий. Обычно достаточно линий, ограничивающих таблицу сверху и снизу, а также линии, отделяющей заголовок от содержимого таблицы.
  2. Избегайте вертикальных линий.
  3. Оставляйте достаточный просвет между строками.
  4. Если не знаете как выравнивать содержимое колонки, выравнивайте его по левому краю.

Первым советом мы уже вовсю пользуемся. Что касается совета №2, то с разделением колонок хорошо справляются горизонтальные пробелы, так что необходимость в вертикальных линиях возникает редко. Но уж если вы начали их использовать, используйте до конца: таблицы, где одни ячейки заключены в рамочки, а другие нет выглядят некрасиво.

Что касается просвета между строками, то сравните две таблицы:

Таблица, выполненная стандартными средствами booktabs

Таблица, выполненная в booktabs, с дополнительным просветом

Первая нам уже знакома, а во второй вертикальный просвет между строками увеличен с помощью команды \arraystretch:

\renewcommand{\arraystretch}{1.2}

Иногда полезно подогнать левую и правую границы таблицы под текстовое содержимое. Делается это с помощью следующей команды:

\begin{tabular}{@{}lll@{}}

Левая и правая границы таблицы подогнаны под текстовое содержимое



Комментарии

comments powered by Disqus