ggplot2 es un paquete en R diseñado para la creación de gráficos de datos de manera eficiente y flexible. Se basa en la gramática de gráficos, una teoría que describe los componentes de un gráfico (datos, estética, geometría, etc.) y cómo se combinan para crear visualizaciones complejas. Aquí tienes una explicación básica de cómo funciona ggplot2 en R.
Primero, necesitas instalar y cargar el paquete ggplot2 si no lo tienes ya instalado:
#install.packages("ggplot2")
library(ggplot2)
#install.packages("plotly")
library(plotly) #Biblioteca de gráficos interactivos
##
## Adjuntando el paquete: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
La base de datos mtcars es un conjunto de datos incorporado en R que contiene información sobre diferentes automóviles. Este conjunto de datos se originó en la revista Motor Trend de 1974 y proporciona datos sobre 32 automóviles de 1973-74. Es un conjunto de datos muy utilizado para demostraciones y ejemplos de análisis de datos en R.
Supongamos que tienes un conjunto de datos mtcars y deseas crear un gráfico de dispersión de mpg vs wt (millas por galón vs peso del automóvil):
# Cargar el conjunto de datos mtcars
data(mtcars)
# Crear un gráfico de dispersión básico
ggplot(data = mtcars, aes(x = wt, y = mpg)) + geom_point()
Puedes agregar más capas y personalizar el gráfico:
ggplot(data = mtcars, aes(x = wt, y = mpg)) +
geom_point(color = "blue", size = 3) + # Cambiar color y tamaño de los puntos
labs(title = "Peso vs. Consumo de Combustible", # Título del gráfico
x = "Peso (1000 lbs)", # Etiqueta del eje x
y = "Millas por Galón") # Etiqueta del eje y
Para dividir el gráfico en subgráficos basados en una variable, usa facet_wrap o facet_grid:
ggplot(data = mtcars, aes(x = wt, y = mpg)) +
geom_point() +
facet_wrap(~ cyl) # Crear subgráficos por número de cilindros
Puedes ajustar la apariencia del gráfico utilizando theme:
ggplot(data = mtcars, aes(x = wt, y = mpg)) +
geom_point() +
theme_minimal() # Usar un tema minimalista
g<-ggplot(data = mtcars, aes(x = wt, y = mpg)) +
geom_point(aes(color = factor(cyl)), size = 3) + # Color por número de cilindros
labs(title = "Peso vs. Consumo de Combustible",
x = "Peso (1000 lbs)",
y = "Millas por Galón",
color = "Cilindros") + # Leyenda de colores
theme_minimal() +
theme(plot.title = element_text(hjust = 0.5)) # Centrar el título
interactive_plot <- ggplotly(g)
interactive_plot