library(dplyr)
library(ggplot2)Libreria GGPLOT
Importación de librerias
Importar dataset
df <- read.csv(file = 'data/df_random.csv', sep = ',')
head(df, 3) col1 col2 col3 col4 col5 col6
1 19.9 19.6 18.2 1976 Tipo 3 Clase C
2 20.2 20.3 18.6 1977 Tipo 1 Clase A
3 20.2 19.4 18.4 1978 Tipo 2 Clase D
Capas de GGPLOT
La libreria ggplot permite generar gráficos por medio de niveles o capas que se van creando unas tras otra según sean requeridas. Las capas mas importantes son:
- Data
- Aesthetics
- Geometries
- Facets
- Theme
1. GGPLOT - Data
La primera capa data inserta el dataframe en el objeto ggplot.
ggplot(df)
2. GGPLOT - Aesthetic
La capa aesthetic permite configurar las variables que iran en los ejes X e Y asi como su apariencia.
ggplot(df, aes(x = col1, y = col2))
3. GGPLOT - Geometries
La capa geometries muestra la forma en que se representara la información según el tipo dato utilizado (numerico o categorico). La configuración de esta capa modifica la apariencia general de los datos.
Las geometrias más usadas son:
- geom_point()
- geom_histogram()
- geom_bar()
- geom_line()
- geom_boxplot()
- geom_violin()
ggplot(df, aes(x = col1, y = col2)) +
geom_point()
Estas son las 3 mínimas capas necesarias para representar la información. Para un mejor orden, la capa geometria puede contener a las otras dos capas anteriores, aunque en algunos casos sera necesario colocarlo dentro del argumento ggplot().
ggplot() +
geom_point(data = df, aes(x = col1, y = col2))
Modificando la apariencia por medio de la capa geom
ggplot() +
geom_point(data = df,
aes(x = col1, y = col2),
color = "blue",
shape = 19)
Modificando la apariencia por medio de la capa aes
ggplot() +
geom_point(data = df,
aes(x = col1, y = col2, color = col5, shape = col5))
4. GGPLOT - Facets
La capa facets permite agrupar los datos en gráficas independientes según su categoria.
ggplot() +
geom_point(data = df,
aes(x = col1, y = col2, color = col6, shape = col6)) +
facet_wrap(~ df$col6)
5. GGPLOT - Theme
La capa theme modifica la apariencia de la gráfica. Por ejemplo:
- theme_minimal()
- theme_gray()
- theme_dark()
- theme_void()
- theme_classic()
ggplot() +
geom_point(data = df,
aes(x = col1, y = col2, color = col6, shape = col6)) +
facet_wrap(~ df$col6) +
theme_minimal()
Tambien se puede modificar los elementos del gráfico, como el título, ejes y leyenda con la capa labs.
ggplot() +
geom_point(data = df,
aes(x = col1, y = col2, color = col5)) +
theme(plot.title = element_text(color = "blue", size = 13, face = "bold", hjust = 0.5),
plot.subtitle = element_text(size = 8, hjust = 0.5),
plot.caption = element_text(face = "italic", hjust = 0),
axis.title.x = element_text(size = 10, face = "bold"),
axis.title.y = element_text(size = 10, face = "bold"),
legend.position = c(0.9, 0.25)) +
labs(title = "Titulo del diagrama",
subtitle = "Subtitulo del diagrama",
caption = "Descripcion",
color = "Leyenda",
x = "Eje X",
y = "Eje Y")