English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Рисование диаграмм - столбчатая диаграмма

Язык программирования R предоставляет大量的 библиотек для реализации функций рисования.

Диаграмма в виде пирога, или пироговая диаграмма, это круговая статистическая диаграмма, разделенная на несколько секторов, которая используется для описания относительных отношений между количеством, частотой или процентами.

Язык программирования R использует функцию pie() для создания диаграммы в виде пирога, формат синтаксиса如下:

pie(x, labels = names(x), edges = 200, radius = 0.8,
    clockwise = FALSE, init.angle = if(clockwise) 90 else 0,
    density = NULL, angle = 45, col = NULL, border = NULL,
    lty = NULL, main = NULL, ...)
  • x: числовой вектор, представляющий площадь каждого сектора.

  • labels: вектор символов, представляющий этикетки для секторов.

  • edges: этот параметр не очень полезен,指的是 количество сторон многоугольника (контур круга подобен многограннику с многими сторонами).

  • radius: радиус диаграммы в виде пирога.

  • main: заголовок диаграммы в виде пирога.

  • clockwise: логическое значение, которое указывает, разрезаются ли части пирога по часовой стрелке.

  • angle: установка ската узора.

  • density: плотность узора на дне. По умолчанию значение NULL.

  • col: это цвет каждого сектора, аналогичен палитре.

Для рисования диаграммы в виде пирога необходимо сделать такие подготовительные работы: вектор, отражающий количество, этикетки для частей, цвета для частей (дополнительные)

Далее мы нарисуем простую диаграмму в виде пирога:

library(plotrix)
# Подготовка данных
info = c(1, 2, 4, 8)
# Названия
names = c("Google", "w3codebox", "Taobao", "Weibo")
# Цвета (по желанию)
piepercent = paste(round(100 * info / sum(info)), "%")
pie(info, labels=names, col=cols)

Выполнение программы рисования создаст файл PDF в текущей директории (Rplots.pdf), открыв файл, можно увидеть эффект графики следующим образом:

Мы также можем использовать функции png(), jpeg(), bmp() для установки формата файла выходного изображения в виде изображения:

library(plotrix)
# Подготовка данных
info = c(1, 2, 4, 8)
# Названия
names = c("Google", "w3codebox", "Taobao", "Weibo")
# Цвета (по желанию)
# Установка выходного изображения
png(file='w3codebox-pie.png', height=300, width=300)
piepercent = paste(round(100 * info / sum(info)), "%")
pie(info, labels=names, col=cols)

Далее мы устанавливаем заголовок для диаграммы в виде пирога, для китайского шрифта необходимо установить параметр шрифта family='GB1', также можно установить библиотеку шрифтов, подробнее см.:R 绘图 - 中文支持Рисование диаграмм - поддержка китайского языка

library(plotrix)
# Подготовка данных
info = c(1, 2, 4, 8)
# Названия
names = c("Google", "w3codebox", "Taobao", "Weibo")
# Цвета (по желанию)
。
# Расчет процента
piepercent = paste(round(100 * info / sum(info)), "%")
# Рисование
pie(info, labels = piepercent, main = "Анализ сайтов", col = cols, family = 'GB1')
# Добавить цветные метки

legend("topright", names, cex = 0.8, fill = cols)

Если нужно нарисовать 3D-饼овую диаграмму, можно использовать функцию pie3D() из библиотеки plotrix, перед использованием необходимо сначала установить:
Пример
# Загрузить plotrix
library(plotrix)
# Подготовка данных
info = c(1, 2, 4, 8)
# Названия
names = c("Google", "w3codebox", "Taobao", "Weibo")
# Цвета (по желанию)
cols = c("#ED1C24","#22B14C","#FFC90E","#3f48CC")
# Установить имя файла, вывод в формате png
png(file = "3d_pie_chart.png")
# Рисование 3D-диаграммы, family необходимо установить на поддерживаемый вашей системой китайский шрифт

pie3D(info, labels = names, explode = 0.1, main = "3D-диаграмма", family = "STHeitiTC-Light")