lessR
Los gráficos de donut (donut charts o gráficos de rosquilla) son una alternativa a los gráficos de sectores. En R base es posible crear este tipo de visualización con la función PieChart del paquete lessR.
Considera el conjunto de datos "Employee" (proporcionado por el paquete) y pasa la columna Dept (departamento) a la función, indicando el nombre del conjunto de datos. Hemos establecido main = NULL para eliminar el título por defecto. Ten en cuenta que también puedes usar la función pc.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
main = NULL)
# Equivalente a:
pc(Dept, data = datos,
main = NULL)

La función también proporciona un argumento llamado rows, que permite crear un subconjunto de los datos. En este ejemplo estamos seleccionando solo a las mujeres con salarios superiores a 45000.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
rows = (Gender == "W" & Salary > 45000),
main = NULL)


El argumento hole controla el tamaño del agujero central, que va desde 0 (un gráfico de sectores) a 0.99. El valor por defecto es 0.68.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
hole = 0.1,
main = NULL)

Si estableces un valor cercano a 1 puedes crear un gráfico de donut muy fino como el del ejemplo del siguiente bloque de código.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
hole = 0.95,
main = NULL)
Puedes cambiar el color de los sectores con fill. En este ejemplo estamos usando la paleta "Zissou 1", pero puedes elegir la que quieras. Ten en cuenta que la paleta de colores debe ser de la misma longitud que el número de porciones.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Paleta de colores
col <- hcl.colors(length(unique(datos$Dept)), "Zissou 1")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = col,
main = NULL)

El argumento fill también permite algunas paletas de colores prespecificadas, tales como "viridis", "blues" o "heat", entre otras.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = "viridis",
main = NULL)

El color del borde por defecto (gris claro) también se puede modificar. Pasa el color que quieras al argumento color y elige un grosor y tipo de línea con lwd y lty, respectivamente.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = "viridis",
color = "black",
lwd = 2,
lty = 1,
main = NULL)

También puedes cambiar el color de fondo del agujero central, que por defecto es blanco. Esto es especialmente útil si cambias el color de fondo del gráfico.
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = "blues",
hole_fill = "#B7E3E0",
main = NULL)

El argumento labels se puede usar para eliminar los valores, establecerlos como proporciones o tal y como son. Ten en cuenta que la función muestra porcentajes por defecto. También puedes usar los argumentos values_size, values_digits, values_color y values_position para personalizarlos. Las posibles opciones se muestran abajo.

Eliminar valores
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = "viridis",
values = "off",
main = NULL)

Valores como proporción
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = "viridis",
values = "prop",
main = NULL)

Valores sin modificar
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = "viridis",
values = "input",
main = NULL)

Personalización de los valores
# install.packages(lessR)
library(lessR)
# Datos de muestra del paquete
datos <- rd("Employee")
# Gráfico de donut
PieChart(Dept, data = datos,
fill = "viridis",
main = NULL,
color = "black",
lwd = 1.5,
values_color = c(rep("white", 4), 1),
values_size = 0.85)
También te puede interesar