6.7.16
Detecta la frecuencia al instante con una linea de tiempo tipo codigo de barras
Cuando solo importan las fechas en que ocurren eventos, una linea de tiempo tipo codigo de barras muestra la densidad con lineas verticales. Permite ver sesgos y concentraciones de periodos de un vistazo.
import pandas as pd
import matplotlib.pyplot as plt
dates = pd.to_datetime(
[
"2024-01-05",
"2024-01-08",
"2024-01-12",
"2024-01-20",
"2024-02-02",
"2024-02-07",
"2024-02-08",
"2024-02-17",
"2024-03-01",
"2024-03-09",
"2024-03-10",
"2024-03-24",
"2024-04-02",
"2024-04-18",
"2024-05-01",
]
)
fig, ax = plt.subplots(figsize=(6.4, 1.8))
ax.vlines(dates, ymin=0, ymax=1, color="#0f172a", linewidth=2)
ax.set_ylim(0, 1)
ax.set_yticks([])
ax.set_title("Linea de tiempo de alertas criticas")
ax.set_xlabel("Fecha")
ax.set_xlim(dates.min() - pd.Timedelta(days=3), dates.max() + pd.Timedelta(days=3))
ax.tick_params(axis="x", rotation=45)
ax.spines[["left", "top", "right"]].set_visible(False)
fig.tight_layout()
plt.show()

Consejos de lectura #
- Cuantas mas lineas haya, mas concentrados estan los eventos. Ayuda a comunicar picos o congestion reciente.
- Cambiar la altura o el color de las lineas permite codificar tipos o pesos de eventos.
- Si la serie temporal es larga, divide por mes o usa desplazamiento para mejorar la legibilidad.