Una línea de regresión se usa básicamente en modelos estadísticos que ayudan a estimar la relación entre una variable dependiente y al menos una variable independiente. En este artículo, veremos cómo trazar una línea de regresión usando ggplot2 en el lenguaje de programación R y diferentes métodos para cambiar el color usando un conjunto de datos incorporado como ejemplo.
Conjunto de datos utilizado: aquí estamos utilizando un marco de datos integrado «Orange» que consta de detalles sobre el crecimiento de cinco tipos diferentes de naranjos. El marco de datos tiene 35 filas y 3 columnas . Las columnas en este marco de datos son:
- Árbol: El orden de los árboles en los que se realiza el experimento sobre la base de valores crecientes de diámetro de la naranja.
- Edad: La edad de los árboles desde que fueron plantados.
- Circunferencia: La circunferencia de la naranja.
Primero, dibujaremos un diagrama de dispersión. Usaremos la función geom_point( ) para trazar el diagrama de dispersión que viene en la biblioteca ggplot2.
Sintaxis:
geom_point(mapeo=NULL, data=NULL, stat=identidad, posición=”identidad”)
Básicamente, estamos haciendo un análisis comparativo de la circunferencia vs edad de las naranjas. La función utilizada es geom_smooth() para trazar una línea suave o una línea de regresión.
Sintaxis:
geom_smooth(método=”automático”,se=FALSO,rango completo=VERDADERO,nivel=0.95)
Parámetro:
- método: el método de suavizado se asigna mediante la palabra clave loess, lm, glm, etc.
- lm : modelo lineal, loess : predeterminado para líneas suaves durante observaciones de conjuntos de datos pequeños.
- fórmula: También puede usar fórmulas para suavizar las líneas. Por ejemplo: y~poly(x,4) que trazará una línea suave de grado 4. Cuanto mayor sea el grado, más curvas tendrá la línea suave.
- se : Toma valores lógicos ya sea “VERDADERO” o “FALSO”.
- fullrange : Toma valor lógico ya sea “VERDADERO” o “FALSO”.
- nivel: Por defecto, el nivel es 0,95 para el intervalo de confianza.
Primero dibujemos un gráfico regular para que la diferencia sea evidente.
Ejemplo:
R
# Scatter Plot and Regression Line library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age))+ geom_point()+ geom_smooth(method=lm,se=FALSE,fullrange=TRUE)+ theme_classic() ggplt
Producción:
Por defecto, la línea de regresión es azul. Para cambiar el color tenemos que usar la palabra clave color dentro de la función geom_smooth().
Sintaxis:
geom_smooth(método=”auto”, color=”nombre_color”)
El código de color tiene la forma «#RedRedBlueBlueGreenGreen»
Ejemplo:
R
# Change Regression Line Color using name of color library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age))+ geom_point()+ geom_smooth(method=lm,se=FALSE,fullrange=TRUE,color="cyan")+ theme_classic() ggplt
Producción:
Ejemplo:
R
# Change Regression Line Color using Color Code library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age))+ geom_point()+ geom_smooth(method=lm,se=FALSE,fullrange=TRUE,color="#006000")+ theme_classic() ggplt
Producción:
Líneas de regresión múltiple
El marco de datos consta de información sobre cinco tipos diferentes de naranjos. Entonces, separemos los puntos de dispersión sobre la base del grupo «Árbol». La forma de las puntas será en función de la categoría de los árboles.
Ejemplo:
R
# Scatter Plot with multiple groups library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age,shape=Tree))+ geom_point()+ theme_classic() ggplt # Plotting Regression Lines on the basis # of groups ggplt+geom_smooth(method=lm,se=FALSE,fullrange=TRUE)
Podemos ver que todas las líneas de regresión son del mismo color. Ahora veremos dos métodos diferentes sobre cómo asignar diferentes colores a múltiples líneas de regresión.
Método 1: Usar color
Es el método predeterminado en el que el compilador R asigna automáticamente el color. La idea clave es asignar el color sobre la base de los árboles, ya que cada grupo de árboles tiene diferentes líneas de regresión. Entonces, escribimos el siguiente comando dentro de la función geom_smooth() :
aes(color=grp_var)
grp_var: la columna en el marco de datos a través de la cual se realiza la agrupación.
Ejemplo:
R
# Scatter Plot library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age,shape=Tree))+ geom_point()+ theme_classic() ggplt # Plotting Regression Lines on the basis of groups ggplt+geom_smooth(method=lm,se=FALSE,fullrange=TRUE) # Changing color of Regression Lines manually ggplt+geom_smooth(method=lm,se=FALSE,fullrange=TRUE,aes(color=Tree))
Producción:
Método 2: cambiar el color manualmente
1. Scale_color_manual( ): esta función se utiliza para agregar color manualmente según la elección del usuario.
Sintaxis:
escala_color_manual(valores=c(“color1”, “color2”, “color3”,….))
color: nombre del color o código de color
Ejemplo:
R
# Scatter Plot and Regression Line library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age,shape=Tree,color=Tree))+ geom_point()+ geom_smooth(method=lm,se=FALSE,fullrange=TRUE)+ theme_classic() ggplt # Manually changing color of Regression Lines ggplt+scale_color_manual(values=c("Red","Purple","#006000","Brown","Cyan"))
Producción:
2. Scale_color_brewer( ) : R nos proporciona varias paletas de colores que contienen diferentes tonos de color.
Sintaxis:
scale_color_brewer(paleta=”paleta_nombre”)
palette_name : El nombre de la paleta. En nuestro caso hemos utilizado la paleta “Greens”.
Ejemplo:
R
# Scatter Plot and Regression Line library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age,shape=Tree,color=Tree))+ geom_point()+ geom_smooth(method=lm,se=FALSE,fullrange=TRUE)+ theme_classic() ggplt # Manually changing color of Regression Lines ggplt+scale_color_brewer(palette="Greens")
Producción:
3. Scale_color_grey( ): Se utiliza para asignar valor de escala de grises a las líneas de regresión. Simplemente invoque la función para agregar escala de grises en las líneas de regresión.
Ejemplo:
R
# Scatter Plot and Regression Line library(ggplot2) ggplt <- ggplot(Orange,aes(x=circumference,y=age,shape=Tree,color=Tree))+ geom_point()+ geom_smooth(method=lm,se=FALSE,fullrange=TRUE)+ theme_classic() ggplt # Manually changing color of Regression Lines ggplt+scale_color_grey()
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