Cómo hacer un gráfico de regresión en highcharter

Hasta ahora, vimos cómo hacer gráficos númericos en Highcharter, tanto de dispersión como de burbujas. Hoy iremos un paso más allá y veremos cómo añadir una línea de regresión sobre dichos datos.

El tema de los gráficos lo puedes encontrar en la entrada sobre cómo crear temas en highcharter y configurarlo al inicio de la sesión así:

library(highcharter)

options(highcharter.theme = elartedeldato_theme)

Cómo hacer un gráfico de regresión en highcharter

Esta vez, a diferencia de otros posts, vamos a utilizar el archiconocido dataset de R, iris. SIn duda, uno de los más famosos en el mundo #rstats.

reactable::reactable(head(iris))

Highcharter permite ajustar regresiones de forma muy sencilla a través del pluggin highcharts-regression.js. Simplemente, consiste en realizar un gráfico de dispersión al que se le añade esta dependencia haciendo uso de la función hc_add_dependency() y se indica regression = TRUE en las opciones del plot.

library(highcharter)

hchart(
  iris,
  "scatter",
  hcaes(x = Sepal.Length, y = Sepal.Width, group = Species),
  regression = TRUE
  ) |>
  hc_colors(c("#aedcc0", "#206999", "#ffab44")) |>
  hc_add_dependency("plugins/highcharts-regression.js") |>
  hc_title(text = "<b>Gráfico de regresión</b>") |>
  hc_subtitle(text = "<i>Ejemplo de gráfico de regresión en Highcharter - dataset iris</i>") |>
  hc_credits(enabled = TRUE, text = "http://elartedeldato.com")

Dado que el conjunto de datos consta de 3 grupos, indicamos específicamente solo 3 colores. Si en el tema personalizado existen más colores que el número de categorías, cada línea de regresión irá de un color diferente a los datos a los que se refiere. Por eso, con hc_colors() fijamos exactamente 3 colores, uno por categoría.

Paula L. Casado
Paula L. Casado
Data Scientist

Científica de datos especializada en visualización de datos.

Relacionado