
Público
Plotly en producción (Pokémon Dashboard)
Dashboard interactivo con Python + Plotly para exploración y comparación: lecciones prácticas sobre performance, UX y despliegue sin escribir JavaScript.
Stack
Python · Plotly · Dash · Deploy
Artefactos
Demo / repositorio públicos
En breve
- Dashboard interactivo con Python + Plotly/Dash (Pokémon) desplegado sin escribir JavaScript.
- Enfocado en trade-offs reales: performance, UX y estructura mantenible.
- Repo reproducible como plantilla, con patrones como agregación previa y reutilización de layouts.
Patrones reutilizables
- Estructura por capas: load → compute → figures (legible y testeable).
- Pre-agregación + reutilización de layouts para performance.
- UX consistente: empty states, labels y defaults razonables.
- Separación: Plotly Express (velocidad) vs graph_objects (control fino).
Contexto
Muchos equipos quieren interactividad web sin depender de un stack frontend completo. Plotly (y Dash) permiten llegar rápido con Python.
Este caso resume patrones y tradeoffs reales usando un dashboard como producto “end-to-end”: datos, figuras, UI y despliegue.
Decisiones
- Arquitectura por capas: load → compute → make_figures para mantener legibilidad y testabilidad.
- Controles y vistas compactas: lo suficiente para explorar, sin “dashboard infinito”.
- Performance: agregación previa y reutilización de layouts para evitar recalcular todo en cada cambio.
Arquitectura
- Plotly Express para prototipar rápido; graph_objects para control fino cuando hace falta.
- Export/compartición como artefacto (HTML o repo) para facilitar difusión sin fricción.
Resultados
- Un producto demostrable (repo) que sirve como plantilla para futuros dashboards.
- Un checklist claro de límites (datos grandes, personalización extrema) y cómo mitigarlos.
- Buenas prácticas aplicables: consistencia visual, estados vacíos y accesibilidad básica.