Найти тему
Блокнот математика

PGFPLOTS — графики типографского качества в LaTeX

При написании статей по математике часто приходится строить графики. Для этого есть много средств: от электронных таблиц вроде LibreOffice Calc или MS Excel до gnuplot, включая R и многое другое. Однако есть серьезная проблема: эти рисунки, как правило, не согласованы с текстом статьи. Шрифт может отличаться, размер шрифта — тем более, вставка греческих букв уже может быть приключением, а уж минимальная формула — непреодолимым препятствием. Даже русские подписи не всегда легко сделать, хотя сейчас, конечно, стало проще.

Требования к качеству публикаций стремительно растут, и если пару лет назад картинка, чуть ли не от руки нарисованная, годилась, то теперь может и возникнуть препятствие. Я уж молчу про монографии, где это всегда было важно.

Существует ряд пакетов для Латеха, которые позволяют решить эту проблему. Я расскажу про PGFPLOTS, который потрясающе мощный и удобный в применении. Сам я узнал о нем от коллег, восхитился и пользуюсь. Может быть, "отдам долг", рассказав еще кому-то. В конце заметки — несколько ссылок: на руководства и на материалы, которые рассказывают о пакете лучше, чем я.

Пакет вводит окружение (\begin{tikzpicture}), в котором добавляются оси (\begin{axis} или logaxis), для которых можно указать огромное количество опций: подписи осей, диапазон и многое другое. Далее используем команды \addplot, которые добавляют графики. У нее тоже много опций — можно настроить график по вкусу: линии (цвет, толщина, стиль), маркеры и т.п. График можно строить по точкам, перечисляя координаты прямо в коде:

\begin{tikzpicture}
\begin[xlabel=икс, ylabel=игрек]{axis}
\addplot coordinates {
(0,0)
(0.5,1)
(1,2)
};
\end{axis}
\end{tikzpicture} %пример из мануала

Можно читать данные из внешнего файла с двумя колонками или из таблицы (тот же файл, но столбцов сколько угодно).

Можно указать функцию выражением: \addplot {x^2 + 2*x + 1};

Тригонометрические считают аргумент в градусах — используйте функцию deg для перевода радиан в градусы.

Есть и другие способы.

Что приятно — всё можно настраивать. Засечки на осях, легенду, подписи к осям, стиль линий — вообще все. Что вдвойне приятно — картинку можно экспортировать в EPS, например, и потом использовать отдельно.

Есть и трехмерная графика — поверхности, кривые в пространстве.

Напоследок — галерея красивых картинок из мануала!

Логарифмический масштаб, Подписи, легенда, маркеры, линии, цвета, засечки.
Логарифмический масштаб, Подписи, легенда, маркеры, линии, цвета, засечки.
Закрашенные области.
Закрашенные области.
Столбцовая диаграмма. Можно и вертикально расположить.
Столбцовая диаграмма. Можно и вертикально расположить.
Облако точек.
Облако точек.
Подписи на графике.
Подписи на графике.
А это моя картинка. Не так уж оно сложно.
А это моя картинка. Не так уж оно сложно.

Домашняя страница проекта.

Мануал — находишь, что нужно, и правишь для своих нужд.

Пост на Хабре. Еще один материал. Целый сайт.

Научно-популярные каналы на Дзене: путеводитель
Новости популярной науки12 марта 2022