Dashboard Increíble con Python y Streamlit ⚡ ¡Crea Apps Pro sin HTML en solo 15 minutos!
¿Cómo crear un dashboard espectacular con Python?
Introducción a la creación de dashboards
- Se menciona que millones de dólares se deciden diariamente utilizando dashboards, y se promete enseñar a crear uno impresionante en pocos minutos y gratis usando Python.
- Se introduce Streamlit como una herramienta que convierte código Python en aplicaciones web profesionales sin necesidad de HTML, describiéndolo como "magia programática".
Instalación y configuración inicial
- Se instruye sobre cómo crear una carpeta llamada "dashboard" y abrirla en Visual Studio Code para comenzar el proyecto.
- Se mencionan las librerías necesarias: Streamlit para la interfaz gráfica, pandas para manipulación de datos y plotly para gráficos. Se recomienda usar un entorno virtual aunque no se crea uno en este caso.
Importación de librerías y configuración del dashboard
- El presentador importa las librerías necesarias al código: Streamlit, pandas, plotly express y plotly.graph_objects.
- Configuración inicial del dashboard con
st.page_config, estableciendo el título como "mi Dashboard Pro", el layout como "wide" y un icono gráfico.
Creación de datos de ejemplo
- Se crean datos ficticios que incluyen meses, ventas, número de clientes por mes y regiones. Estos datos se almacenan en un DataFrame utilizando pandas.
- Se actualiza el título del dashboard a "dashboard ejecutivo pro" mediante
st.titlepara diferenciarlo del anterior.
Formato Markdown y columnas
- Se utiliza formato markdown para agregar texto descriptivo al dashboard; se añade un título nivel tres que dice "análisis en tiempo real".
- Creación de cuatro columnas dentro del dashboard usando
st.columns, donde cada columna puede contener diferentes métricas o visualizaciones.
Métricas dentro del dashboard
- En la primera columna se agrega una métrica que muestra las ventas totales utilizando
st.metric, sumando los valores desde el DataFrame creado anteriormente.
Creación de Métricas y Gráficos Interactivos
Definición de Métricas
- Se propone crear una métrica que permita comparar valores con meses anteriores, utilizando fórmulas dinámicas en lugar de valores fijos.
- La segunda columna se refiere a la suma de clientes activos, mostrando un incremento de 23 clientes. Se destaca la intuitividad del sistema al mostrar cambios positivos o negativos mediante flechas.
Cálculo del Promedio Mensual
- La tercera columna calculará el promedio mensual de ventas, utilizando un formato específico para mostrar los resultados sin decimales.
- Se establece un crecimiento proyectado del 8% en las ventas, lo que se refleja en la actualización automática de los datos.
Implementación del ROI
- La cuarta columna se dedicará al cálculo del ROI (Retorno sobre Inversión), estableciendo valores constantes para completar el dashboard.
Creación de Gráficos Interactivos
- Se introduce la creación de gráficos interactivos usando Plotly Express, donde se grafican las ventas mensuales con el mes como eje X y las ventas como eje Y.
- Se menciona la posibilidad de personalizar el gráfico mediante
update layout, recomendando usar un tema oscuro para mejorar la visualización.
Gráfico Circular y Funcionalidades Adicionales
- Se crea un gráfico circular que segmenta los clientes por región, destacando su atractivo visual y funcionalidad interactiva.
- Los usuarios pueden descargar gráficos como imágenes y utilizar funciones interactivas como zoom y pantalla completa.
Implementación de Filtros en Barra Lateral
- Se añade una barra lateral para aplicar filtros a los datos presentados. Esta barra incluye opciones para seleccionar meses específicos y filtrar por región.
Filtrado de Datos en Streamlit
Filtrando Regiones Únicas
- Se explica la importancia de filtrar por región, utilizando
uniquepara obtener solo las regiones únicas, ya que algunas se repiten en los datos.
- Se introduce una variable llamada
dato filtrado, que verifica si la región seleccionada está dentro del filtro aplicado.
Visualización de Datos Filtrados
- Se menciona que el gráfico puede ser filtrado mediante el código anterior, pero se enfoca en mostrar un DataFrame con los datos filtrados y su contenedor completo.
- El DataFrame no se muestra hasta que se selecciona al menos una región; esto resalta la necesidad de interacción del usuario para visualizar datos.
Interacción y Selección de Meses
- Al seleccionar meses, no hay un filtro aplicado a menos que se implemente un código adicional; esto enfatiza la importancia de tener filtros funcionales.
- Para filtrar todos los datos correctamente, es necesario ajustar la barra lateral para permitir selecciones adecuadas.
Creación de un Dashboard Efectivo
- Se destaca el logro de crear un dashboard profesional con funcionalidades básicas, sugiriendo que este es solo el comienzo del proceso.
Agradecimientos y Futuras Oportunidades