Plot.Histograma {UnalR}R Documentation

Cree un histograma que represente gráficamente la distribución de datos en un conjunto, facilitando la comprensión de su frecuencia y patrones con dos diferentes paquetes.

Description

Esta función proporciona excelentes herramientas y opciones para la visualización de un histograma, con el objetivo de que pueda representar la distribución de frecuencia de datos numéricos (variable de un conjunto de datos) en forma de barras, donde cada barra representa la cantidad de veces que aparece un valor o rango de valores. Dicho diagrama se puede representar usando dos diferentes librerías que son Highcharter y Plotly, las cuales usan internamente JavaScript.

Usage

Plot.Histograma(
  datos,
  variable,
  color,
  bins,
  density = FALSE,
  titulo = "",
  xlim,
  ylim,
  labelX = NULL,
  labelY = "Conteo",
  libreria = c("highcharter", "plotly"),
  estilo = NULL,
  estatico = FALSE
)

Arguments

datos

Un data frame, no un objeto clase serie de tiempo o vector numérico.

variable

Una variable numérica dentro del data frame ingresado en datos.

color

Cadena de caracteres indicando el color de relleno de las barras para todos los rangos de valores (intervalos).

bins

Valor numérico que indica el número máximo de bins deseado. Este valor se utilizará en un algoritmo que decidirá el tamaño de bins óptimo para que el histograma visualice mejor la distribución de los datos.

density

Si es TRUE se agregará la curva de densidad superpuesta al histograma. El valor por defecto es FALSE.

titulo

Cadena de caracteres indicando el título principal del plot.

xlim

Vector numérico que especifica el límite inferior y superior, respectivamente, del eje X. Si no se introduce algún valor se mostrará todo el rango disponible para dicho eje.

ylim

Vector numérico que especifica el límite inferior y superior, respectivamente, del eje Y. Si no se introduce algún valor se mostrará todo el rango disponible para dicho eje.

labelX

Cadena de caracteres indicando la etiqueta del eje X. Por defecto se emplea el rótulo "Periodo".

labelY

Cadena de caracteres indicando la etiqueta del eje Y.

libreria

Cadena de caracteres que indica el paquete con el cual se realizará la serie. Los valores permitidos son "highcharter" (valor predeterminado), "plotly" o "dygraphs". Los valores se emparejarán parcialmente.

estilo

Lista compuesta por varios parámetros, los cuales van a ser usados de acuerdo con la librería especificada para graficar el plot y cuyo objetivo es personalizar pequeños detalles de ésta.

  • hc.Tema, ply.Credits, gg.Tema y gg.Texto: Igual uso que en Plot.Series()

  • ply.Density: Una lista de parámetros admitidos por el argumento line de la función add_lines().

  • gg.Hist: Una lista de parámetros admitidos por la función geom_histogram().

  • gg.Density: Una lista de parámetros admitidos por la función geom_density().

estatico

Si es FALSE (valor predeterminado) el gráfico a retornar será dinámico (dependiendo de la librería seleccionada), en caso contrario se retornará un gráfico estático construido con ggplot2.

Details

Value

Retorna el histograma (objeto widget de HTML) creado. La clase del objeto retornado será un "htmlwidget" y dependiendo de la librería usada pertenecerá adicionalmente a la clase "highchart" o "plotly".

Lista de argumentos de estilo

Sabemos que puede ser abrumador el número de argumentos dentro del parámetro estilo, pero es necesario si queremos ofrecer al usuario la máxima personalización dentro de cada función usando cualquier librería. Por tal razón, a continuación, se detalla el listado completo de argumentos, usados al especificar la librería y en qué función están presentes (marcado con una × si lo posee).

Librería estilo$ Plot.Series() Plot.Barras() Plot.Apiladas() Plot.Boxplot() Plot.Radar() Plot.Treemap() Plot.Torta() Plot.Drilldown()
gg.Tema × × × ×
l gg.Texto × × × ×
l gg.Legend × × ×
l gg.Linea ×
l gg.Punto ×
l gg.Bar × ×
l gg.VarWidth ×
l gg.OutShape ×
l gg.JitWidth ×
l gg.JitSize ×
l gg.Range ×
ggplot2 gg.plty ×
l gg.plwd ×
l gg.cglwd ×
l gg.cglcol ×
l gg.fontsize.title ×
l gg.fontsize.labels ×
l gg.fontcolor.labels ×
l gg.border.lwds ×
l gg.border.col ×
l gg.lowerbound.cex.labels ×
l gg.force.print.labels ×
gg.overlap.labels ×
» hc.Tema × × × × × × ×
l hc.Credits × × × × × × ×
highcharter hc.BoxInfo ×
l hc.Slider ×
» hc.borderRadius ×
ply.Credits × × × × × × ×
° ply.Legend × ×
° ply.LegendPosition × × × ×
plotly ply.Interaction × ×
° ply.Relleno ×
° ply.Opacidad × ×
ply.LegendTitle ×
dygraphs dyg.LegendWidth ×
» dyg.Resaltar ×
e.Tema ×
l e.Credits ×
echarts4r e.Forma ×
l e.LegType ×
e.LegLoc ×

Examples

Txt <- "Datos Oficiales de la Prueba Saber Pro del año 2020"
Plot.Histograma(
  datos    = ejSaberPro2020,
  variable = PUNT_RAZO_CUANT,
  color    = "#12D640",
  bins     = 100,
  titulo   = "DISTRIBUCI\u00d3N EN EL PUNTAJE DE RAZONAMIENTO CUANTITATIVO",
  ylim     = c(0, 175),
  labelX   = "Puntaje en Matem\u00e1ticas",
  labelY   = "N\u00famero de Estudiantes",
  libreria = "highcharter",
  estilo   = list(hc.Tema  = 4)
)
# ---------------------------------------------------------------------------
Plot.Histograma(
  datos    = ejSaberPro2020,
  variable = PUNT_RAZO_CUANT,
  color    = "#B9ABD1",
  bins     = 80,
  density  = TRUE,
  titulo   = "DISTRIBUCI\u00d3N EN EL PUNTAJE\nDE RAZONAMIENTO CUANTITATIVO",
  ylim     = c(0, 400),
  labelX   = "Puntaje en Matem\u00e1ticas",
  labelY   = "N\u00famero de Estudiantes",
  libreria = "plotly",
  estilo   = list(
    ply.Credits = list(x = 0.5, y = 1.1, text = Txt),
    ply.Density = list(color = "#DD3380", width = 4, dash = "dot", opacity = 0.2)
  )
)
# ---------------------------------------------------------------------------
# Ejemplo usando el caso estático (ggplot2)
Plot.Histograma(
  datos    = ejSaberPro2020,
  variable = PUNT_RAZO_CUANT,
  density  = TRUE,
  titulo   = "DISTRIBUCI\u00d3N EN EL PUNTAJE DE RAZONAMIENTO CUANTITATIVO",
  labelX   = "Puntaje en Matem\u00e1ticas",
  labelY   = "N\u00famero de Estudiantes",
  estatico = TRUE,
  estilo   = list(
    gg.Tema    = 6,
    gg.Hist    = list(
      binwidth = 10, fill = "#FF4040", color = "#144169", alpha = 0.5, linetype = "dashed"
    ),
    gg.Density = list(color = "#20B2AA", fill = "#40E0D0", alpha = 0.4, lwd = 1.1, linetype = 2),
    gg.Texto   = list(subtitle = "\u00bb\u00bb\u00bb", tag = "\u00ae", caption  = Txt)
  )
)


[Package UnalR version 1.0.0 Index]