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