Как сделать два графика на одной диаграмме в mathcad

GeekBrains

ggplot2: как легко совместить несколько графиков в одном, часть 1

Эта статья шаг за шагом покажет, как совместить несколько ggplot-графиков на одной или нескольких иллюстрациях, с помощью вспомогательных функций, доступных в пакетах R ggpubr, cowplot и gridExtra. Также опишем, как экспортировать полученные графики в файл.

Стандартные функции R — par() и layout() — нельзя использовать, чтобы поместить несколько ggplot2-графиков на одну иллюстрацию.

  • grid.arrange() и arrangeGrob() , чтобы совместить несколько ggplot-графиков в один
  • marrangeGrob() , чтобы разместить несколько ggplot-графиков на нескольких иллюстрациях

Если нужно привести оси к единой размерности, можно использовать пакет cowplot, в котором есть функция plot_grid() с аргументом align. Но этот пакет, в свою очередь, не содержит решения для размещения нескольких графиков на разных иллюстрациях. Чтобы сделать это, мы применим функцию ggarrange() [в ggpubr], обёртку над функцией plot_grid() , которая умеет упорядочивать графики на нескольких иллюстрациях. Она также поможет создать общую легенду для нескольких графиков.

Предварительные условия

Пакеты R

Вам потребуется установить ggpubr (версии 0.1.3 или выше). Это позволит легко создавать ggplot-графики для публикаций.

Мы рекомендуем установить последнюю версию от разработчиков из GitHub следующим образом:

Если не получилось установить с GitHub, попробуйте из CRAN, вот так:

Обратите внимание, что установка ggpubr также поставит пакеты gridExtra и cowplot, поэтому их не нужно устанавливать отдельно.

Загрузите ggpubr:

Наборы данных для примеров

Создадим несколько графиков

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

  • диаграммы рассеивания и точечные диаграммы для набора данных ToothGrowth
  • диаграммы рассеивания и разброса для набора данных mtcars

Создаем диаграмму рассеивания и точечную диаграмму


GeekBrains

Создаем упорядоченные диаграммы рассеивания и разброса

Создадим упорядоченные диаграммы рассеивания. Изменим цвет заливки для группирующей переменной «cyl». Сортировка для всех данных, а не внутри групп.


Размещение на одной диаграмме

Чтобы совместить несколько ggplot-графиков, воспользуемся функцией ggarrange() [в ggpubr], обёрткой над функцией plot_grid() [в пакете cowplot]. По сравнению со стандартной функцией plot_grid() , ggarrange() может разместить несколько графиков на нескольких иллюстрациях.


Можно воспользоваться и функцией plot_grid() [в cowplot]:

или функцией grid.arrange() [в gridExtra]:

Подпишем упорядоченный график

Функция R annotate_figure() [в ggpubr]:


Обратите внимание, что функция annotate_figure() поддерживает любые ggplot-графики.

Выравниваем график и данные

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

Чтобы проиллюстрировать этот случай, воспользуемся пакетом survminer. Сначала установите его ( install.packages(“survminer”) ), а потом сделайте следующее:

  • plot: кривые выживания
  • table: график с таблицей рисков


Можно видеть, что оси кривых выживания и таблицы рисков не выровнены вертикально. Чтобы сделать это, зададим аргумент align:

GeekBrains

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *