Saltar al contenido principal
eLearner.app
Módulo 5 · Lección 1 de 29/10 en el curso~12 min
Lecciones del módulo (1/2)

Gramática y Geometrías Básicas

La visualización de datos en R está dominada por ggplot2, un paquete basado en la "Gramática de los Gráficos" (Grammar of Graphics). Esta teoría descompone los gráficos en componentes semánticos independientes, como los datos, los mapeos estéticos y los elementos geométricos.


La Estructura de ggplot2

Cada gráfico creado con ggplot2 comienza con la llamada a la función ggplot(), a la cual asociamos un data frame y definimos cómo mapear las columnas del data frame a las propiedades visuales mediante la función aes() (aesthetics).

Luego, añadimos capas geométricas usando el operador + (atención: se usa + y no %>% en ggplot2).

La estructura básica es:

Code
ggplot(data = <DATA_FRAME>, mapping = aes(<ESTÉTICAS>)) +
  <GEOMETRÍA>()

Propiedades Estéticas (aes) y Geometrías (geom_*)

La función aes() define qué variables de los datos controlan los atributos del gráfico:

  • x: Posición en el eje horizontal.
  • y: Posición en el eje vertical.
  • color: Color de los puntos o de las líneas.
  • fill: Color de relleno de formas cerradas (ej. barras).
  • size: Tamaño de los elementos.

Las geometrías (geom_) definen el tipo de visualización gráfica:

1. Gráfico de dispersión (geom_point())

Ideal para mostrar la relación entre dos variables numéricas.

Code
ggplot(df, aes(x = age, y = income)) +
  geom_point()

2. Gráfico de líneas (geom_line())

Usado a menudo para datos temporales o series históricas.

Code
ggplot(df, aes(x = year, y = sales)) +
  geom_line()

3. Gráfico de barras (geom_bar() y geom_col())

geom_bar() cuenta la frecuencia de cada categoría por defecto, mientras que geom_col() representa directamente los valores presentes en una columna y.

Code
# Representa el valor de la columna 'sales' para cada 'category'
ggplot(df, aes(x = category, y = sales)) +
  geom_col()

Pruébalo tú

Ejercicio 1: Crea un gráfico de dispersión básico

Ejercicio#r.m5.l1.e1
Intentos: 0Cargando...

Crea un gráfico de dispersión (scatter plot) utilizando el data frame df. Mapea la columna height en el eje x y la columna weight en el eje y. Usa geom_point().

Cargando editor...
Mostrar pista

Asegúrate de usar ggplot(df, aes(x = height, y = weight)) + geom_point()

Solución disponible después de 3 intentos

Ejercicio 2: Agrega un color basado en los datos

Ejercicio#r.m5.l1.e2
Intentos: 0Cargando...

Modifica el gráfico anterior mapeando la propiedad color en la columna gender dentro de aes() para colorear los puntos según el género.

Cargando editor...
Mostrar pista

Incluye color = gender dentro de aes(), por ejemplo: aes(x = height, y = weight, color = gender).

Solución disponible después de 3 intentos

Ejercicio 3: Gráfico de líneas

Ejercicio#r.m5.l1.e3
Intentos: 0Cargando...

Crea un gráfico de líneas usando df. Mapea la columna year en el eje x y la columna sales en el eje y. Agrega la capa geométrica geom_line().

Cargando editor...
Mostrar pista

Usa ggplot(df, aes(x = year, y = sales)) + geom_line()

Solución disponible después de 3 intentos

Ejercicio 4: Gráfico de barras con geom_col

Ejercicio#r.m5.l1.e4
Intentos: 0Cargando...

Crea un gráfico de columnas para visualizar el valor de los datos. Mapea la columna category en el eje x y la columna value en el eje y. Usa la geometría geom_col().

Cargando editor...
Mostrar pista

Usa ggplot(df, aes(x = category, y = value)) + geom_col()

Solución disponible después de 3 intentos

Ejercicio 5: Combina múltiples geometrías

Ejercicio#r.m5.l1.e5
Intentos: 0Cargando...

En ggplot2 puedes superponer capas geométricas. Crea un gráfico que combine tanto geom_point() como geom_smooth() mapeando x_val en el eje x y y_val en el eje y.

Cargando editor...
Mostrar pista

Agrega tanto geom_point() como geom_smooth() separados por el signo '+'.

Solución disponible después de 3 intentos