Cambiar el color de relleno y borde del gráfico ggplot2 en R

En este artículo, veremos varios métodos para agregar color a un ggplot2 en el lenguaje de programación R. Seleccionaremos un gráfico de barras como ejemplo para ver cómo podemos cambiar el color del relleno de la barra, así como los bordes.

Primero, debe instalar el paquete ggplot2 si no se instaló previamente en R Studio. Para crear un diagrama de barras simple, usaremos la función geom_bar().

Sintaxis:

geom_bar(estadísticas, relleno, color, ancho)

Parámetros:  

  • stat : Configure el parámetro stat para identificar el modo.
  • relleno: representa el color dentro de las barras.
  • color : Representa el color de los contornos de las barras.
  • ancho: Representa el ancho de las barras.

Datos en uso:

Primero dibujemos una gráfica regular para que la diferencia sea evidente.

Ejemplo:

R

library(ggplot2)
  
# Inserting data
ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"),
                  runs=c(67,37,74,10))
  
# Basic vertical barplot
perf <-ggplot(data=ODI, aes(x=match, y=runs))+
 geom_bar(stat="identity")
perf

Producción:

Ahora analicemos los colores que se pueden agregar a esta trama. Agregar colores no solo hace que los gráficos sean atractivos, sino que también los hace descriptivos para una mejor comprensión.

Método 1: usar colores predeterminados

  • Color de relleno diferente

Use el comando relleno para agregar color dentro de las barras. Dado que las barras están en los diferentes valores del eje x, necesitamos asignar la variable del eje x al relleno. 

Sintaxis

relleno=atributo

Debe escribir este comando dentro de aes() , también conocida como función de cotización o función estética en la biblioteca ggplot2.

Ejemplo:

R

library(ggplot2)
  
# Inserting data
ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"),
                  runs=c(67,37,74,10))
  
# Assigning default and different colors to bar plot
perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+
 geom_bar(stat="identity")
perf

Producción:

  • Mismo color de relleno

Usa el mismo relleno. Pero esta vez como tenemos que asignar un solo color, lo usaremos dentro de geom_bar(). Asigne el color de su elección al relleno como se muestra a continuación. El tema se cambia porque es posible que algunos gráficos de color no sean visibles para el tema predeterminado en R. 

Sintaxis:

tema_[nombre_del_tema]( )

Ejemplo:

R

library(ggplot2)
  
# Inserting data
ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"),
                  runs=c(67,37,74,10))
  
# Assigning default and same colors to bar plot
perf <-ggplot(data=ODI, aes(x=match, y=runs))+
 geom_bar(stat="identity",fill="lightblue")+
 theme_dark()
perf

Producción:

  • Mismo esquema

 Aquí necesitamos un color de comando para asignar colores al contorno. Los colores de contorno se ven bien cuando el color de relleno es blanco. Es propiedad del color porque unos colores eclipsan a otros colores o si asignamos el mismo color para rellenar y delinear ambos. Como necesitamos el mismo relleno y el mismo contorno, escribiremos estos comandos dentro de geom_bar().

Ejemplo:

R

library(ggplot2)
  
# Inserting data
ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"),
                  runs=c(67,37,74,10))
  
# Assigning default and same outline 
# colors to bar plot
perf <-ggplot(data=ODI, aes(x=match, y=runs))+
 geom_bar(stat="identity",color="red",fill="white")+
 theme_classic()
perf

Producción:

  • Esquema diferente

Aquí tenemos que proporcionar diferentes esquemas. El relleno será el mismo que es blanco. El relleno estará dentro de geom_bar(). El color estará dentro de aes() bajo ggplot() ya que es variable en este caso.

Ejemplo:

R

library(ggplot2)
  
# Inserting data
ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"),
                  runs=c(67,37,74,10))
  
Assigning default and different outline colors to bar plot
perf <-ggplot(data=ODI, aes(x=match, y=runs,color=match))+
 geom_bar(stat="identity",fill="white")+
 theme_classic()
perf

Producción:

Método 2: configurar los colores manualmente

1) Para color de relleno

Para cambiar manualmente el color de un diagrama de barras usaremos la siguiente función:

  • scale_fill_manual( ) : Se utiliza para proporcionar colores personalizados. Podemos escribir el código de color como «#XXXXXX» o podemos escribir directamente el nombre del color como «color_name».

Sintaxis:

scale_fill_manual( valores ) 

  • scale_fill_brewer( ) : Utiliza un rango de colores del conjunto de paletas en el paquete RColorBrewer.

Sintaxis:

s

  • scale_fill_grey( ) : Para rellenar las barras usando colores de escala de grises.

Ejemplo:

R

library(ggplot2)
  
# Inserting data
ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"),
                  runs=c(67,37,74,10))
  
perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match)) +
  geom_bar(stat="identity")
  
# Assigning fill colors manually 
# Assigning custom color
perf+scale_fill_manual(values=c("#9933FF",
                             "#33FFFF",
                             "red",
                             "darkblue"))
  
# Assigning brewer palette 
perf+scale_fill_brewer(palette=""PrGN"")
  
# Assigning gray scale
perf+scale_fill_grey()

Producción:

2) Para bordes o contornos 

Para cambiar manualmente el color de los bordes de un diagrama de barras usaremos la siguiente función:

  • scale_color_manual( ): Se utiliza para proporcionar colores personalizados. Podemos escribir el código de color como «#XXXXXX» o podemos escribir directamente el nombre del color como «color_name».

Sintaxis:

escala_color_manual( valores ) 

  • scale_color_brewer( ): Utiliza una gama de colores del conjunto de paletas en el paquete RColorBrewer.

Sintaxis:

s

  • scale_color_grey( ): proporciona contornos de los colores de la escala de grises.

Dado que necesitamos rellenar los bordes, es mejor hacer que todas las barras se llenen de color blanco para una mejor combinación de colores y también agregar un tema adecuado de su elección.

Ejemplo:

R

library(ggplot2)
  
# Inserting data
ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"),
                  runs=c(67,37,74,10))
  
perf <-ggplot(data=ODI, aes(x=match, y=runs,color=match))+
  geom_bar(stat="identity",fill="white")
  
# Assigning border colors manually 
# Assigning custom colors
perf+scale_color_manual(values=c("#9933FF",
                             "#33FFFF",
                             "red",
                             "darkblue"))+theme_classic()
  
# Assigning brewer palette 
perf+scale_color_brewer(palette="Dark2")+theme_classic()
  
# Assigning gray scale
perf+scale_color_grey()+theme_classic()

Producción:

Publicación traducida automáticamente

Artículo escrito por rishabhchakrabortygfg 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 *