Gráfico de dispersión con curva o recta de regresión en R

Diagrama de dispersión basado en un modelo

Puedes crear un diagrama de dispersión basado en un modelo teórico y agregarlo al diagrama con la función lines. Considera el ejemplo del siguiente bloque de código como ilustración.

# Datos. Modelo: Y = X ^ 2
set.seed(54)
x <- seq(0, 10, by = 0.05)
y <- x ^ 2 + rnorm(length(x), sd = 20)

# Gráfico de dispersión y modelo subyacente
plot(x, y, pch = 16)
lines(x, x ^ 2, col = 2, lwd = 3)

# Texto
text(2, 70, expression(Y == X ^ 2))

Modelo subyacente del gráfico de dispersión

Gráfico de dispersión con regresión lineal

Gráfico de dispersión en R con recta de regresión

Es posible añadir una recta de regresión al diagrama de dispersión pasando un objeto lm a la función abline. Recuerda que coef devuelve los coeficientes del modelo lineal estimado.

# Datos. Modelo: Y = X ^ 2
set.seed(54)
x <- seq(0, 10, by = 0.05)
y <- x ^ 2 + rnorm(length(x), sd = 20)

# Gráfico de dispersión con recta de regresión
plot(x, y, pch = 16)
abline(lm(y ~ x), col = 4, lwd = 3)

# Texto
coef <- round(coef(lm(y ~ x)), 2)
text(2, 70,  paste("Y = ", coef[1], "+", coef[2], "x"))

Gráfico de dispersión con curva LOWESS

El suavizador LOWESS usa regresión polinómica ponderada localmente. Este tipo de regresión no paramétrica se puede estimar con la función lowess.

# Datos. Modelo: Y = X ^ 2
set.seed(54)
x <- seq(0, 10, by = 0.05)
y <- x ^ 2 + rnorm(length(x), sd = 20)

# Gráfico de dispersión con regresión suavizada
plot(x, y, pch = 16)
lines(lowess(x, y), col = 3, lwd = 3)

Gráfico de dispersión con regresión suavizada LOWESS en R

ggplot2

Elegant Graphics for Data Analysis

Comprar en Amazon
Better Data Visualizations

A Guide for Scholars, Researchers, and Wonks

Comprar en Amazon
Storytelling con Datos

Visualización de datos para profesionales

Comprar en Amazon
Data Sketches

A journey of imagination, exploration, and beautiful data visualizations

Comprar en Amazon

También te puede interesar