Ваше руководство по созданию круговых диаграмм, паук-графиков и круговых столбчатых диаграмм в R

В третьей части серии визуализации данных с помощью ggplot2 мы сосредоточимся на круговых графиках. Список руководств следующий:

  1. Точечные и ящичные диаграммы
  2. Гистограммы, гистограммы и графики плотности
  3. Круговые диаграммы (круговые диаграммы, диаграммы-пауки и гистограммы)
  4. theme (): создайте свою собственную тему () для увеличения рабочего процесса

Итак, в рамках круговых визуализаций мы рассмотрим, как создавать следующие диаграммы:

  1. Круговые диаграммы
  2. Диаграммы паука
  3. Круглые столбчатые диаграммы

Далее мы обсудим плюсы и минусы использования этих типов визуализаций.

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

Данные и пакеты

Для создания визуальных эффектов для круговых графиков мы будем использовать набор данных для завтрака от Kaggle. В наборе данных 77 уникальных типов злаков с 16 полями.

Мы создадим две новые переменные: производство (содержит количество различных производителей злаков) и cereal_Bran_low (отфильтрованные данные о питании для выбранной марки хлопьев с отрубями с калорийностью от 80 до 120. ).

В третьей части серии, как обычно, мы будем использовать ggplot2 и tidyverse, которые являются широко используемыми базовыми пакетами. Кроме них, для построения паучьего или радарного сюжета будет использоваться пакет ggradar.

Круговые диаграммы

Для создания круговых диаграмм мы будем использовать переменную manufact. В пакете ggplot2 нет определенной функции для создания круговой диаграммы, хотя базовое построение графика в R имеет функцию pie(). Чтобы построить круговые диаграммы с помощью ggplot2, мы будем использовать функции geom_bar() и coord_polar() для создания сегментов круга. coord_polar() преобразует декартовы координаты в полярную систему координат, таким образом легко создавать круговые графики. Аргументу x для эстетики ggplot() присваивается значение x=“ ”, а аргументу theta присваивается значение y в функции coord_polar().

Чтобы преобразовать гистограмму в круговую, установите stat=“identity” в geom_bar() и исправьте width=1.

Плюсы: полезно при сравнении нескольких точек данных.

Минусы: трудно интерпретировать для больших наборов данных, трудно отобразить тенденции с течением времени.

Модификация круговой диаграммы приводит к кольцевой диаграмме. Размер и толщину пончика можно изменять, управляя аргументом x эстетики ggplot(). Убедитесь, что значение аргумента x находится в диапазоне xlim.

График "Яблочко"

Для создания графика с круговым стержнем установите аргумент stat=“identity” в geom_bar() функции. Убедитесь, что стержни расположены в порядке увеличения длины радиально наружу. Для преобразования столбчатой ​​диаграммы в круговую ориентацию установите аргумент theta=“y” в функции coord_polar(). Если цветные полосы завершат один полный раунд, то диаграмма будет напоминать «яблочко», отсюда и название.

Диаграмма Кокскомба

Простое изменение одного аргумента в диаграмме «яблочко» приведет к диаграмме Кокскомба. Вместо присвоения theta=“y”, если оно изменено на theta=“x” в функции coord_polar(), мы получаем диаграмму Коккомба.

Диаграммы паука

В настоящее время в пакете ggplot2 нет функции для создания паук или радарных диаграмм. Пакет ggradar совместим с пакетом ggplot2, который можно использовать для создания паук-диаграмм. В функции ggradar (), как и в функции ggplot (), можно определить эстетику. Требуется несколько важных аргументов:

values.radar: печатает минимальное, среднее и максимальное значения круговых линий сетки.

grid.min: минимальное значение сетки

grid.mid: среднее значение сетки

grid.max: максимальное значение сетки

Плюсы: легко понять, если все переменные имеют одинаковую шкалу.

Минусы: трудно сравнивать, когда шкалы имеют разные единицы, трудно интерпретировать круговые графики.

Полный код для построения всех графиков.

Вывод

Итак, в этом руководстве мы увидели, как создавать круговые диаграммы, графики паука, диаграммы coxcomb и диаграммы «яблочко». Определено, как круговая диаграмма может быть легко преобразована в другие типы диаграмм, кроме диаграммы паука, путем изменения пары аргументов либо в эстетике функции ggplot(), либо в функции geom_bar(). Мы также обсудили плюсы и минусы использования типов круговых диаграмм (особенно круговых диаграмм и диаграмм-пауков, которые являются популярными) и увидели, что в целом эти диаграммы не рекомендуются и используются их альтернативы, которые легко понять и интерпретировать.

Дальнейшие чтения из этой серии или по визуализациям с использованием пакета ggplot2.











использованная литература

  1. Https://www.kaggle.com/crawford/80-cereals
  2. Https://blog.scottlogic.com/2011/09/23/a-critique-of-radar-charts.html#chart2
  3. Https://www.data-to-viz.com/caveat/spider.html

Ссылка на полный код находится здесь.

Вы можете связаться со мной в LinkedIn и Twitter, чтобы следить за моим путешествием по науке о данных и визуализации данных.