www.stratebi.com 2
Introducción
En la mayoría de ocasiones, después de hacer un cálculo, queremos
mostrar de forma sencilla algún resultado de tal forma que cualquiera
lo pueda visualizar. Sin embargo, a veces el resultado no es algo sencillo
y queremos proporcionar herramientas para que otros puedan
“juguetear” los datos y que vean actualizaciones de forma interactiva.
¿Qué opciones existen?
www.stratebi.com 4
PANEL
Panel es una biblioteca de Python de código abierto que le permite
crear aplicaciones web interactivas personalizadas y paneles
conectando widgets definidos por el usuario a gráficos, imágenes,
tablas o texto.
www.stratebi.com 6
DASH
Dash es un marco de Python para crear aplicaciones web analíticas. No
se requiere JavaScript.
Construido sobre Plotly.js, React y Flask, Dash vincula elementos
modernos de la interfaz de usuario como menús desplegables,
controles deslizantes y gráficos directamente a su código analítico de
Python. Buena opción pero no está soportada por Windows.
www.stratebi.com 8
VOILÀ
Voilà se puede utilizar como una aplicación independiente o como una
extensión de servidor Jupyter. Voilà se puede usar para ejecutar,
convertir y servir una computadora portátil Jupyter como una
aplicación independiente. También puede usar Voilà desde un servidor
Jupyter (por ejemplo, después de ejecutar jupyter lab o jupyter
notebook).
www.stratebi.com 10
IPYWIDGETS
Ipywidgets (también conocido como Jupyter Widgets) permite a los
usuarios de Python trabajar con widgets personalizados y crear
aplicaciones y paneles desde Python, tanto en portátiles Jupyter como
en servidores independientes (cuando se combina con Voila).
Los ordenadores portátiles cobran vida cuando se utilizan widgets
interactivos. Los usuarios obtienen el control de sus datos y pueden
visualizar cambios en los datos.
www.stratebi.com 12
BOKEH
Python tiene un ecosistema increíble de potentes herramientas de
análisis: NumPy, Scipy, Pandas, Dask, Scikit-Learn, OpenCV y más.
Con una amplia gama de widgets, herramientas de trazado y eventos
de IU que pueden activar devoluciones de llamada reales de Python, el
servidor Bokeh es el puente que le permite conectar estas
herramientas a visualizaciones interactivas y ricas en el navegador.
www.stratebi.com 14
STREAMLIT
La diferencia clave de Streamlit con respecto a esas otras herramientas
es que con Streamlit, todo el archivo fuente de Python se vuelve a
ejecutar de manera efectiva cada vez que un widget cambia de valor, lo
que tiene la ventaja de no permitir la ejecución confusa y desordenada
de las celdas del notebook, y también puede simplificar la razón sobre
el estado en general.
Es bastante sencillo de usar. Todo es código Python y la parte de la
aplicación es muy pequeña, el resto del código es el análisis normal que
se haría para obtener el gráfico.
www.stratebi.com 19
CONCLUSIONES
Finalmente nos hemos decantado por utilizar Streamlit como
herramienta base para la creación de la aplicación, por su buena
integración con diferentes librerías, su simplicidad, y porque su
creación se basa puramente en código Python, no hace falta HTML o
CSS.