Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Updated: 20 feb 2026

En este capítulo repasamos las herramientas esenciales para visualizar datos antes de entrar a Machine Learning. Veremos cómo crear gráficas básicas, cómo mejorar su apariencia y cómo combinar Matplotlib con Seaborn para resultados claros y reproducibles.


Matplotlib

Crear una figura y un eje

import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(6,4))

De línea

x = [0,1,2,3,4]
y = [0,1,4,9,16]
plt.plot(x, y, label="y = x^2")
plt.xlabel("x")
plt.ylabel("y")
plt.title("Ejemplo: línea")
plt.legend()
plt.show()

De puntos (scatter)

plt.scatter(x, y, c="C1", marker="o")
plt.xlabel("x")
plt.ylabel("y")
plt.title("Ejemplo: scatter")
plt.show()

Histograma

import numpy as np
datos = np.random.normal(loc=0, scale=1, size=500)
plt.hist(datos, bins=30)
plt.title("Histograma de datos (normal)")
plt.show()

Subplots (múltiples gráficos)

fig, axes = plt.subplots(1,2, figsize=(10,4))
axes[0].plot(x, y)
axes[0].set_title("Línea")
axes[1].hist(datos, bins=20)
axes[1].set_title("Histograma")
plt.tight_layout()
plt.show()

Guardar figura

plt.plot(x,y)
plt.savefig("mi_grafica.png", dpi=150, bbox_inches="tight")

Seaborn — visualizaciones estadísticas

Seaborn trabaja encima de Matplotlib y suele producir gráficos más informativos por defecto.

Histograma con KDE

import seaborn as sns
sns.histplot(datos, kde=True)
plt.title("Histograma + KDE")
plt.show()

Scatter con separación por categoría

# df es un DataFrame con columnas 'x','y','clase'
# ejemplo: sns.scatterplot(data=df, x="x", y="y", hue="clase")

Boxplot (comparar distribuciones)

# sns.boxplot(x="categoria", y="valor", data=df)

Countplot (conteo de categorías)

# sns.countplot(x="clase", data=df)

Heatmap (matriz de correlación)

# sns.heatmap(df.corr(), annot=True, fmt=".2f", cmap="coolwarm")

Pairplot (exploración rápida)

# sns.pairplot(df, hue="clase", vars=["u","g","r"])

Buenas prácticas rápidas


Ejercicio guiado (práctico) — Visualización científica

En este ejercicio vas a analizar y visualizar una señal astronómica simulada. Hazlo en una libreta (Colab / Jupyter). Sigue los pasos y usa las pistas si te quedas atascado.

La imagen curva_luz.png se creará en el directorio de trabajo. Puedes ajustar window para un suavizado más o menos agresivo.