GUÍA MAESTRA

SEMANA 12 — Introducción a aplicaciones interactivas con Streamlit

Asignatura: Programación de Computadores con Python / Fundamentos de Programación Programas: Ingeniería Agrícola, Civil y Agroindustrial — Universidad de Sucre

En esta semana los estudiantes conocen una de las herramientas más utilizadas actualmente para crear aplicaciones web científicas con Python:

Streamlit.

Streamlit permite transformar programas de Python en aplicaciones interactivas, donde el usuario puede:

  • introducir datos
  • ejecutar cálculos
  • visualizar resultados
  • generar gráficos

Todo esto mediante una interfaz web sencilla.

Este tipo de aplicaciones se utilizan en ingeniería para:

  • calculadoras técnicas
  • análisis de datos
  • simulaciones
  • visualización de resultados experimentales

OBJETIVO DE APRENDIZAJE

Al finalizar la semana el estudiante será capaz de:

  • Comprender qué es una aplicación interactiva.
  • Utilizar la biblioteca Streamlit.
  • Crear una interfaz simple para introducir datos.
  • Mostrar resultados y gráficos.
  • Comprender cómo la programación puede convertirse en una herramienta profesional.

SESIÓN 1 (2 HORAS)

Introducción a Streamlit

1. Introducción conceptual del docente (20 minutos)

El docente plantea la siguiente situación:

Hasta ahora los programas se ejecutan en la consola.

Ejemplo:

radio = float(input("Ingrese radio: "))
altura = float(input("Ingrese altura: "))

Pero un ingeniero podría querer una aplicación donde los usuarios ingresen datos en una página.

Ejemplo:

Calculadora de volumen de tanque

En lugar de usar consola, el usuario introduce los datos en una interfaz gráfica.

Esto es posible con Streamlit.


¿Qué es Streamlit?

Streamlit es una biblioteca de Python que permite crear aplicaciones web interactivas de forma rápida y sencilla.


2. Activación del tutor IA

Los estudiantes interactúan con un ChatBot utilizando la funcionalidad:

Estudia y Aprende

Se recomienda utilizar:

GPT Programación Python – Ingeniería


PROMPT DE INICIO — SEMANA 12

Actúa como tutor experto en desarrollo de aplicaciones con Python.

Tema: Streamlit para aplicaciones de ingeniería.

1) Explica primero de forma simple qué es una aplicación interactiva.
2) Luego explica qué es Streamlit y para qué se utiliza.
3) Explica cómo se instala Streamlit.
4) Explica cómo se ejecuta una aplicación Streamlit.
5) Presenta 3 ejemplos de aplicaciones de ingeniería que se podrían desarrollar con Streamlit.

Después hazme 3 preguntas para verificar si comprendí el concepto.

3. Interacción guiada con IA (30 minutos)

El estudiante debe:

  1. Leer la explicación del tutor IA.
  2. Responder las preguntas propuestas.
  3. Solicitar ejemplos adicionales si lo considera necesario.

4. Instalar Streamlit

En terminal:

pip install streamlit

5. Primer programa con Streamlit

Archivo:

app.py

Código:

import streamlit as st

st.title("Aplicación de Ingeniería")

st.write("Bienvenido a la primera aplicación interactiva")

6. Ejecutar la aplicación

En terminal:

streamlit run app.py

Esto abre una página web local.


SESIÓN 2 (2 HORAS)

Construcción de una aplicación simple

En esta sesión los estudiantes construyen una pequeña aplicación interactiva y realizan la síntesis escrita del tema.


1. Activación del tutor IA

Los estudiantes interactúan nuevamente con el ChatBot.


PROMPT DE APRENDIZAJE — SESIÓN 2

Actúa como tutor experto en desarrollo de aplicaciones científicas con Python.

Explícame:

1) Cómo funciona Streamlit.
2) Cómo crear campos de entrada de datos.
3) Cómo mostrar resultados en pantalla.
4) Cómo generar gráficos dentro de Streamlit.
5) Qué errores comunes cometen los estudiantes al crear aplicaciones.

Después:

• presenta un ejemplo completo de aplicación Streamlit
• explica cada línea del código
• propone un ejercicio de aplicación de ingeniería.

2. Entrada de datos en Streamlit

Ejemplo:

import streamlit as st

st.title("Calculadora de área")

base = st.number_input("Ingrese base")

altura = st.number_input("Ingrese altura")

area = base * altura

st.write("Área:", area)

Explicación

Elemento Función
st.title() título de la aplicación
st.number_input() entrada numérica
st.write() mostrar resultados

3. Aplicación de ingeniería

Volumen de tanque cilíndrico

import streamlit as st
import math

st.title("Calculadora de volumen de tanque")

radio = st.number_input("Radio del tanque")

altura = st.number_input("Altura del tanque")

volumen = math.pi * radio**2 * altura

st.write("Volumen:", volumen)

Interpretación

Esta aplicación permite calcular volumen de almacenamiento de agua.


4. Gráficos en Streamlit

import streamlit as st
import matplotlib.pyplot as plt

datos = [10, 5, 0, 12, 8, 6, 3]

fig, ax = plt.subplots()

ax.plot(datos)

st.pyplot(fig)

Interpretación

Permite visualizar datos experimentales dentro de la aplicación.


5. Mini-proyecto de la semana

Construir una aplicación que:

  1. Reciba datos de precipitación.
  2. Calcule promedio.
  3. Muestre un gráfico.

Ejemplo

import streamlit as st
import numpy as np
import matplotlib.pyplot as plt

st.title("Análisis de lluvia")

datos = st.text_input("Ingrese datos separados por coma")

if datos:

    valores = [float(x) for x in datos.split(",")]

    promedio = np.mean(valores)

    st.write("Promedio:", promedio)

    fig, ax = plt.subplots()

    ax.plot(valores)

    st.pyplot(fig)

6. PROMPT GLOBAL DE CIERRE

Al finalizar la sesión los estudiantes generan el resumen que escribirán manualmente.

Actúa como tutor experto en programación con Python.

Con base en el tema que acabamos de estudiar (Aplicaciones con Streamlit),
elabora un RESUMEN BREVE que cumpla las siguientes condiciones:

1. Debe caber en UNA SOLA HOJA escrita a mano.
2. Debe usar lenguaje claro y técnico.
3. Debe incluir:

- idea central del tema
- conceptos clave explicados con sencillez
- relación entre programación y aplicaciones interactivas
- un ejemplo aplicado a ingeniería

4. No debe ser copia literal de libros.
5. Debe permitir que el estudiante lo escriba comprendiendo lo esencial.

Al final agrega una frase breve de reflexión sobre el uso de aplicaciones interactivas en ingeniería.

7. ACTIVIDAD FINAL — HOJA ESTUDIA Y APRENDE

Los estudiantes completarán la hoja institucional.

En el reverso deben escribir a mano:

  • qué es Streamlit
  • qué es una aplicación interactiva
  • cómo introducir datos en una aplicación
  • cómo mostrar resultados
  • ejemplo de aplicación en ingeniería

RESULTADOS DE APRENDIZAJE DE LA SEMANA

Al finalizar la semana el estudiante será capaz de:

  • crear aplicaciones simples con Streamlit
  • introducir datos mediante interfaces
  • mostrar resultados interactivos
  • visualizar datos en aplicaciones