Crear una paleta de colores distinta en R

En este artículo, discutiremos cómo crear una paleta de colores distinta en el lenguaje de programación R. Hay varias formas de crear paletas de colores en la programación R; todos estos métodos se analizan a continuación. 

Método 1: Usar el paquete grDevices

Usaremos un paquete llamado grDevices, que significa Dispositivos gráficos, para crear distintas paletas de colores en el primer método. Aquí usaremos la función de colores de grDevices para hacer nuestra paleta.

  • Usando la función de colores(): 

En este ejemplo, haremos un gráfico circular usando este mismo paquete. Entonces, primero mencionaremos la cantidad de colores que queremos en la paleta. Luego usaremos la función colors() de este paquete, que contiene una amplia gama de colores basados ​​en HCL (hue-chroma-luminance).

Ejemplo:

R

# number of colors in the palette
no_of_colors <- 10 
  
# applying the colors function from 
# grDevices package
color_palette <- grDevices::colors()  
  
# optional, for printing the hex 
# color codes
color_palette                         
  
# pie function for drawing a pie chart
pie(rep(1, no_of_colors), radius = 0.8, 
    col = color_palette, 
    main = "Color Palette using colors function")

Producción:

Ahora, digamos que deseamos crear una paleta de coloraturas de solo color Verde y sus matices. Seguiremos los pasos anteriores como de costumbre para hacer esta paleta también, pero el único cambio es que usaremos el comando grep aquí. grep se usa para buscar o hacer coincidir el patrón de argumento dentro de cada elemento de un vector de caracteres: difieren en el formato y la cantidad de detalles en los resultados.

Sintaxis:

grep(patrón, x, ignore.case = FALSO, perl = FALSO, valor = FALSO, fijo = FALSO, useBytes = FALSO, invertir = FALSO)

Ejemplo:

R

# number of colors in the palette
no_of_colors <- 20      
  
# applying the colors function
color_palette <- grDevices::colors()                          
  
# prints all hex color codes
color_palette                                                 
  
# grep command for matching the 
# pattern(character string --> green), 
palette <- color_palette[grep(
  "green", grDevices::colors())]
  
# sample colours
green_palette <- sample(palette, no_of_colors)
  
# the list of the colours, which will 
# show up in the palette
green_palette
  
# shows the created palette
pie(rep(1, no_of_colors), col = green_palette, 
    main = "Green and its shades")

Producción:

  • usando el arcoiris()

Aquí haremos la paleta de colores usando la función rainbow() del paquete grDevices. La función rainbow() es una paleta de colores incorporada que se puede usar para generar instantáneamente algunos vectores de color de la longitud deseada según el parámetro, y devuelve el código hexadecimal del colo disponible.

Sintaxis:

arco iris (nombre de la variable que almacena la cantidad de colores)

Todo el proceso es igual que antes, solo que estamos usando la función de arco iris aquí.

Ejemplo:

R

# no. of colours in the palette
no_of_colors <- 15
  
# applying the rainbow function
colorful_palette <- rainbow(no_of_colors)
  
# prints the hex color codes
colorful_palette
  
# creates a pie chart of rainbow colours
pie(rep(1, no_of_colors), col = colorful_palette, 
    main = "Rainbow Palette")

Producción

Método 2: Usar el paquete viridis.

El paquete Viridis es un mapa de colores predeterminado. Es una serie de mapas de color que están especialmente diseñados para mejorar la legibilidad de los gráficos para alguien con formas comunes de deficiencia en la visión del color o daltonismo.

Este paquete en particular consta de 8 escalas de colores: “viridis”, que es el nombre del tema, y ​​otras opciones similares con propiedades similares, que se enumeran a continuación.

-> “magma”, –> opción A

->“infierno”, –> opción B

->“plasma”, –> opción C

-> “viridis” –> opción por defecto D

->“cividis”, –> opción E

-> “cohete”, –> opción F

-> “mako”, –> opción G

-> “turbo” –> opción H

Esta escala de viridis es para comprender mejor los tipos de color, mencionados con sus opciones.

Sintaxis:

viridis_pal(opción = “opción”)(variable que almacena el número de colores)

Ejemplo:

R

# installation of the viridis package
install.packages("viridis")
  
# loading of the library
library("viridis")
  
# it may happen that the above 2 
# lines of code pops out an error
# saying viridisLite has to loaded
# so to avoid that do load that 
# package too
library("viridisLite")
  
# number of colors in the palette
no_of_colors <- 10
  
# options represent the color types, 
# there are altogether 8 options.
palette <- viridis_pal(option = "D")(no_of_colors)
  
# hex color codes
palette
  
# represents colors in a pie chart manner
pie(rep(1, no_of_colors), col = palette, main = "viridis palette")

Producción:

Además, si deseamos cambiar el tipo de patrón de color de esta paleta, debemos cambiar la opción (cualquier cosa dentro de A a H). Cada parte del código anterior permanecerá igual excepto la opción.

Ejemplo:

R

# loading of the library
library("viridis")
  
# it may happen that the above
# 2 lines of code pops out an
# error saying viridisLite has 
# to loaded so to avoid that do
# load that package too
library("viridisLite")
  
# number of colors in the palette
no_of_colors <- 10
  
# option A --> magma
palette <- viridis_pal(option = "A")(no_of_colors)
  
# hex color codes
palette
  
# represents colors in a pie chart manner
pie(rep(1, no_of_colors), col = palette, main = "magma palette")

Producción:

Método 3: Usar el paquete randomcolor

randomcoloR es un paquete de lenguaje R para generar colores atractivos y distintivos. La función distictColorPalette() genera colores perfectamente reconocibles.

Sintaxis:

distictColorPalette(variable que tiene el número de colores almacenados)

Ejemplo:

R

# installation
install.packages("randomcoloR")
library("randomcoloR")
  
# no. of colours in the palette
no_of_colors <- 15
  
# sample colors
palette <- distinctColorPalette(no_of_colors)     
  
# hex color codes
palette
  
# colors in the pie chart
pie(rep(1, no_of_colors), col = palette, 
    main = "palette using randomcoloR package")

Producción:

Método 4: Usando el paquete RColorBrewer

Este paquete crea bonitas paletas de colores, especialmente para mapas temáticos. 

  • brewer.pal() hace que las paletas de colores de ColorBrewer estén disponibles como paletas R.

Sintaxis:

cervecero.amigo(n, nombre)

Parámetro:

  • n: Número de colores diferentes en la paleta, mínimo 3, máximo según paleta.
  • nombre: Un nombre de paleta de las listas a continuación.
  • display.brewer.pal() muestra la paleta seleccionada en una ventana gráfica.

Sintaxis:

display.brewer.pal(n, nombre)

Parámetro:

  • n: Número de colores diferentes en la paleta, mínimo 3, máximo según paleta.
  • nombre: Un nombre de paleta de las listas a continuación.
  • display.brewer.all() muestra algunas paletas simultáneamente en una ventana gráfica.

Sintaxis:

display.brewer.all(n=NULL, type=”all”, select=NULL, exact.n=TRUE, colorblindFriendly=FALSE)

Parámetro:

  • n: Número de colores diferentes en la paleta, mínimo 3, máximo según paleta.
  • nombre: Un nombre de paleta de las listas a continuación.
  • tipo: una de las strings «div», «qual», «seq» o «all».
  • select: Una lista de nombres de paletas existentes
  • exacta.n : si es VERDADERO, solo muestra las paletas con un número de color dado por n.
  • ColorblindFriendly: si es VERDADERO, muestra solo paletas amigables para daltónicos.
  • brewer.pal.info devuelve información sobre las paletas disponibles como un marco de datos. brewer.pal.info no es una función, es una variable. Esto podría cambiar en el futuro.
  •  nombres de fila Recuperar o establecer los nombres de fila o columna de un objeto similar a una array.

Sintaxis:

nombres de fila(x) <- valor

Hay 3 tipos de paletas, a saber: secuencial, divergente y cualitativa.

  • Las paletas secuenciales son adecuadas para datos ordenados que progresan de menor a mayor. Los pasos de claridad dominan el aspecto de estos esquemas, con colores claros para valores de datos bajos y colores oscuros para valores de datos altos.

R

display.brewer.all(type="seq")

Producción:

  • Las paletas divergentes ponen el mismo énfasis en los valores críticos de rango medio y los extremos en ambos extremos del rango de datos. La clase crítica o ruptura en el medio de la leyenda se enfatiza con colores claros y los extremos alto y bajo se enfatizan con colores oscuros que tienen matices contrastantes. 

R

display.brewer.all(type="div")

Producción:

  • Las paletas cualitativas no implican diferencias de magnitud entre las clases de leyenda y los tonos se utilizan para crear las principales diferencias visuales entre las clases. Los esquemas cualitativos son los más adecuados para representar datos nominales o categóricos.

R

display.brewer.all(type="qual")

Producción:

Ejemplo:

R

# installation of the package RColorBrewer
install.packages("RColorBrewer")
  
# loading of the package
library("RColorBrewer")
  
# extraction of color info
# qual --> Qualitative color palette
palette5 <- brewer.pal.info[brewer.pal.info$category == "qual",]
  
# create vector with all colors
palette <- unlist(mapply(brewer.pal, palette5$maxcolors, 
                         rownames(palette5)))
palette
  
# sample colors
palette_palette <- sample(palette, no_of_colors)
  
# colors with their hex codes
palette_palette
  
# prints the pie chart
pie(rep(1, no_of_colors), col = palette_palette, 
    main = "RColorBrewer Palette")

Producción:

.

Publicación traducida automáticamente

Artículo escrito por shilpimazumdar7150 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *