En este tutorial, aprenderá cómo manejar el mensaje de advertencia de ggplot2 «La escala para ‘rellenar’ ya está presente. Agregar otra escala para ‘relleno’, que reemplazará la escala existente”. en r _
La tabla de contenido queda de la siguiente manera:
Empecemos.
Datos de ejemplo, paquetes y gráfico básico
Usaré los siguientes datos como base para este tutorial de R:
datos < -datos . marco ( grupo = LETRAS [ 1 : 3 ] , # Crear valor de datos de ejemplo = 1 : 9 ) datos # Imprimir datos de ejemplo |
La Tabla 1 ilustra el resultado de la consola de RStudio y muestra que nuestros datos de ejemplo se componen de nueve filas y dos variables.
También tenemos que instalar y cargar el paquete ggplot2 a R , si queremos usar las funciones correspondientes:
instalar _ paquetes ( "ggplot2" ) # Instalar la biblioteca de paquetes ggplot2 ( " ggplot2" ) # Cargar ggplot2 |
Ahora, podemos dibujar un diagrama (es decir, un diagrama de caja) de los datos como se muestra a continuación:
ggp <- ggplot ( datos, aes ( x = grupo , # Crear gráfico ggplot2 predeterminado y = valor , fill = group ) ) + geom_boxplot ( ) ggp # Dibujar el gráfico ggplot2 predeterminado |
En la Figura 1 puede ver que hemos creado un diagrama de caja y bigotes ggplot2 ejecutando la sintaxis anterior.
Ejemplo 1: reproduzca el mensaje de advertencia: la escala para ‘llenar’ ya está presente
En este ejemplo, explicaré cómo replicar la advertencia de ggplot2 “La escala para ‘rellenar’ ya está presente. Agregar otra escala para ‘relleno’, que reemplazará la escala existente”. en el lenguaje de programación R.
Supongamos que queremos cambiar el color de relleno y el orden de la leyenda de nuestro gráfico ggplot2 . Entonces, podríamos intentar aplicar las funciones scale_fill_manual y scale_fill_discrete como se muestra a continuación:
ggp + # Aplicando dos funciones de relleno scale_fill_manual ( valores = c ( "#1b98e0" , "amarillo" , "#353436" ) ) + scale_fill_discrete ( guide = guide_legend ( reverse = TRUE ) ) # La escala para 'llenar' ya está presente. Agregar otra escala para 'relleno', que reemplazará la escala existente. |
Desafortunadamente, la consola de RStudio ha devuelto la advertencia “La escala para ‘rellenar’ ya está presente. Agregar otra escala para ‘relleno’, que reemplazará la escala existente”. después de ejecutar la sintaxis R anterior.
Echemos un vistazo al gráfico ggplot2 que hemos creado:
El resultado de la sintaxis R anterior se muestra en la Figura 2: se cambió el orden de la leyenda ggplot2, pero el color de los cuadros se mantuvo igual. ¿Por qué pasó esto?
La razón de este problema es que hemos utilizado múltiples funciones de «relleno» simultáneamente. El paquete ggplot2 especifica todos los colores al mismo tiempo. Entonces, si agregamos varias funciones del mismo tipo, ggplot2 se confunde.
Pero, ¿cómo podemos depurar esto? ¡Sigue leyendo!
Ejemplo 2: corregir el mensaje de advertencia: la escala para ‘llenar’ ya está presente
Este ejemplo muestra cómo evitar el mensaje de advertencia “La escala para ‘llenar’ ya está presente. Agregar otra escala para ‘relleno’, que reemplazará la escala existente”.
Para esta tarea, tenemos que especificar todas las opciones de relleno dentro de la misma función, es decir, scale_fill_manual:
ggp + # Aplicar solo una función de relleno scale_fill_manual ( values = c ( "#1b98e0" , "amarillo" , "#353436" ) , guía = guía_leyenda ( reverso = VERDADERO ) ) |
Después de ejecutar la sintaxis anterior, se ha creado el diagrama de caja ggplot2 que se muestra en la Figura 3. Como puede ver, se cambiaron tanto el color de relleno como el orden de la leyenda.
Vídeo y recursos adicionales
Si necesita más información sobre los códigos de programación R de este artículo, le recomiendo ver el siguiente video tutorial de mi canal de YouTube. Estoy explicando los ejemplos de la presente publicación en el video.
El video de YouTube se agregará pronto.
Además, puede echar un vistazo a los otros tutoriales en este sitio web.
- Error ggplot2: valor discreto proporcionado a escala continua
- Dibujar ggplot2 Parcela con dos ejes Y
- Transformar ggplot2 Plot Axis a escala log10
- Tratamiento de errores y advertencias en R (descripción general)
- Gráficos en R
- Ejemplos de programación R
Este tutorial ha explicado cómo lidiar con “La escala para ‘rellenar’ ya está presente. Agregar otra escala para ‘relleno’, que reemplazará la escala existente”. en el lenguaje de programación R.
Tenga en cuenta que pueden aparecer mensajes de advertencia similares para otras configuraciones de ggplot2 (por ejemplo, color). Además, tenga en cuenta que este mensaje de advertencia también puede ocurrir al dibujar otros tipos de gráficos utilizando el paquete ggplot2 (por ejemplo, gráficos de barras).
Si tiene más preguntas, hágamelo saber en la sección de comentarios.
Alejandro Lugón es un economista y escritor especializado en Python y R, conocido por ser el creador del blog Estadisticool. Nacido en México, Lugón se graduó de la Universidad Autónoma de México con una Licenciatura en Economía. Desde entonces ha trabajado como economista en varias empresas. Lugón también ha escrito varios libros sobre temas relacionados con la economía, el análisis de datos y la programación. Su blog Estadisticool se ha convertido en un lugar de referencia para los programadores de Python y R. Alejandro Lugón es una inspiración para aquellos que buscan aprender programación y análisis de datos. Su trabajo ha ayudado a muchas personas a entender mejor el uso de la tecnología para hacer sus trabajos.