Ваше руководство по созданию круговых диаграмм, паук-графиков и круговых столбчатых диаграмм в R
В третьей части серии визуализации данных с помощью ggplot2 мы сосредоточимся на круговых графиках. Список руководств следующий:
- Точечные и ящичные диаграммы
- Гистограммы, гистограммы и графики плотности
- Круговые диаграммы (круговые диаграммы, диаграммы-пауки и гистограммы)
- theme (): создайте свою собственную тему () для увеличения рабочего процесса
Итак, в рамках круговых визуализаций мы рассмотрим, как создавать следующие диаграммы:
- Круговые диаграммы
- Диаграммы паука
- Круглые столбчатые диаграммы
Далее мы обсудим плюсы и минусы использования этих типов визуализаций.
С большой силой приходит и большая ответственность, разумно используйте круговые и паутинные диаграммы.
Данные и пакеты
Для создания визуальных эффектов для круговых графиков мы будем использовать набор данных для завтрака от 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
.
использованная литература
- Https://www.kaggle.com/crawford/80-cereals
- Https://blog.scottlogic.com/2011/09/23/a-critique-of-radar-charts.html#chart2
- Https://www.data-to-viz.com/caveat/spider.html
Ссылка на полный код находится здесь.
Вы можете связаться со мной в LinkedIn и Twitter, чтобы следить за моим путешествием по науке о данных и визуализации данных.