1 / 1
Presentación
← Curso

VisualizacióngráficaMódulo 3

Oscar Iván Vargas Pineda Docente
Cómo vamos a avanzar

De una tabla a una imagen que convence

Ya sabes cargar y limpiar datos. Pero una tabla de 500 filas no convence a nadie en una reunión. Aquí aprendes a mirarlos y a hacer que otros los entiendan en cinco segundos.

00

Librerías

con qué se dibuja

01

Anatomía

figura y ejes

02

matplotlib

barras e histograma

03

seaborn

caja y dispersión

04

Cuál elegir

9 gráficos, 9 preguntas

05

Que se entienda

títulos y color

06

Guardar

savefig y resolución

07

Tablero

varios en una figura

Plantilla

para reutilizar

Al terminar el módulo sabrás cuál de estas usar y por qué — y hacerla en menos de diez líneas.

barras

líneas

histograma

caja

dispersión

calor

Antes de dibujar nada

Tres librerías y ya está

En Python hay decenas de librerías para graficar. En la práctica, el 95% del trabajo profesional sale de estas tres, y conviene saber para qué sirve cada una antes de escribir la primera línea.

matplotlibla base

Es el motor: seaborn y pandas dibujan encima de ella. Da el control fino —cada color, cada etiqueta, cada margen— y es la que guarda el archivo para el informe.

ax.bar(x, y)

Si solo aprendes una, que sea esta.

seabornuna línea, un gráfico

Habla DataFrame: le pasas el df y los nombres de las columnas y él agrupa, calcula la estadística y pone la leyenda. Lo que en matplotlib son diez líneas, aquí es una.

sns.boxplot(data=df, x=…, y=…)

Para explorar rápido y para gráficos estadísticos.

plotlyinteractivo

Produce gráficos que se tocan: zoom, valores al pasar el cursor y filtros. No sirve para un PDF, pero es lo que va dentro de un tablero web — el Módulo 4.

px.line(df, x=…, y=…)

Lo retomamos al construir el panel.

y además, según lo que necesites

pandas .plot · el atajo desde el DataFrame plotly express · plotly en una línea altair · gramática de gráficos bokeh · web interactiva plotnine · ggplot2 en Python folium · mapas pyecharts · tableros vistosos

Ninguna es obligatoria. Se aprenden cuando aparece el problema que las pide, no antes.

Y hay una buena noticia: las tres comparten la misma estructura —una figura y unos ejes—. Eso es lo que vemos ahora.
Capítulo 1

Toda gráfica tiene la misma estructura

Una figura es el lienzo; unos ejes son el gráfico que va dentro. Entender esos dos objetos evita casi toda la frustración con matplotlib.

1 Las piezas · pasa el cursor por cada nombre

fig ax Ventas por categoría millones COP 0 400 800 categoría márgenes
fig ax ax.bar() set_title() set_xlabel() set_ylabel() tight_layout()

La figura es el lienzo —el tamaño, el fondo y lo que se guarda al exportar—. Los ejes son el gráfico que va dentro: las barras, los rótulos, el título. Casi todo se le pide a ax.

python · el esqueleto
import matplotlib.pyplot as plt

# 1 · lienzo y ejes
fig, ax = plt.subplots(figsize=(8, 4))

# 2 · dibujar
ax.bar(datos.index, datos.values)

# 3 · explicar
ax.set_title("Ventas por categoría")
ax.set_xlabel("Categoría")
ax.set_ylabel("Millones COP")

# 4 · ajustar y mostrar
plt.tight_layout()
plt.show()

Las cuatro líneas que nunca faltan

set_title()set_xlabel()set_ylabel()tight_layout()

Un gráfico sin títulos de eje no es un gráfico: es un dibujo.

Por internet verás dos estilos: plt.bar(...) y ax.bar(...). Usa el de ax: es el único que funciona cuando pones varias gráficas juntas.
Capítulo 2

matplotlib: la base de todo

Con tres tipos cubres casi todo: barras para comparar, líneas para el tiempo e histograma para ver cómo se reparten los valores.

1 Barras · comparar categorías

Ventas por categoría
python
g = (df.groupby("categoria_producto")["ventas_cop"]
       .sum().sort_values() / 1e6)

fig, ax = plt.subplots(figsize=(8, 4))
ax.barh(g.index, g.values, color="#c8f25a")
ax.set_xlabel("millones COP")

2 Histograma · ver la distribución

Distribución de unidades
python
fig, ax = plt.subplots(figsize=(8, 4))
ax.hist(df["unidades"], bins=30, color="#00f5d4")
ax.set_xlabel("unidades por venta")
ax.set_ylabel("frecuencia")
Mira el histograma: casi todas las ventas son de pocas unidades y hay una cola larga a la derecha. Eso no se ve mirando la tabla. · En tu pantalla saldrán con fondo blanco: el tema oscuro es un plt.style.use(...), no parte del código.
Capítulo 3

seaborn: una línea, un gráfico

seaborn se apoya en matplotlib pero entiende los DataFrame: le pasas el df y los nombres de las columnas, y calcula el resto.

1 Caja · comparar distribuciones

Margen por canal
python
import seaborn as sns

fig, ax = plt.subplots(figsize=(8, 4))
sns.boxplot(data=df, x="canal_venta",
            y="margen_pct", ax=ax)

2 Dispersión · relacionar dos variables

Unidades frente a ventas
python
sns.scatterplot(data=df, x="unidades",
                y="ventas_cop",
                hue="segmento_cliente", ax=ax)
hue= es el argumento más rentable de seaborn: parte cualquier gráfico por una columna categórica y le pone la leyenda solo.
Capítulo 4

El gráfico lo decide la pregunta

No se elige por bonito, sino por lo que quieres que la audiencia responda al mirarlo. Pasa el cursor por cada pregunta; donde haya dos insignias, púlsalas para cambiar el gráfico.

¿Cuál es más grande?

ax.bar() · ax.pie()

Ordénalas por valor, no alfabéticamente. Cambia a torta y verás lo que cuesta comparar porciones.

pasa el cursor

¿Cómo cambia en el tiempo?

ax.plot(fecha, valor)

Solo si el eje X es tiempo. Para categorías, una línea no significa nada.

pasa el cursor

¿Cómo se reparten?

ax.hist() · sns.boxplot()

Histograma para una variable; caja para comparar esa variable entre grupos.

pasa el cursor

¿Se relacionan?

sns.scatterplot() · sns.heatmap()

Dispersión para dos variables; mapa de calor para ver todas las correlaciones de golpe.

pasa el cursor

El gráfico de torta, casi nunca

El ojo humano compara mal los ángulos. Pruébalo aquí arriba: cambia de barras a torta y mira lo que cuesta ordenar las porciones. Resérvala para "una parte frente al total".

La prueba de los cinco segundos

Enseña la gráfica cinco segundos y pregunta qué entendieron. Si dudan, el problema es la gráfica, no la persona.

Capítulo 4 · segunda parte

Cuando la pregunta es más fina

Con los cuatro anteriores resuelves el día a día. Estos cinco aparecen cuando la pregunta se vuelve concreta: rarezas, incertidumbre, varios criterios a la vez, flujos y optimización.

¿Hay datos atípicos?

sns.boxplot(showfliers=True)

Cada punto suelto es una venta fuera de lo normal. Revísala antes de promediar: puede ser un error de captura o el mejor cliente del año.

pasa el cursor

¿La diferencia es real o es ruido?

ax.errorbar(x, media, yerr=ic)

La media sola engaña. Si los intervalos se solapan, no puedes afirmar que un grupo sea mayor que otro.

pasa el cursor

¿Quién gana en varios criterios?

plt.subplot(polar=True) · px.line_polar()

Compara dos o tres perfiles en 5 o 6 ejes. Todos los ejes en la misma escala; con más de siete, se vuelve un garabato.

pasa el cursor

¿Por dónde se mueve el flujo?

go.Sankey() · plotly

De dónde viene y a dónde va: el grosor de la banda es la cantidad. Para embudos, conversiones y reparto de presupuesto.

pasa el cursor

¿Qué combinación da el mejor resultado?

ax.contourf(X, Y, Z) · go.Surface()

Dos variables que puedes ajustar y un resultado que quieres maximizar: el mapa enseña dónde está el óptimo.

pasa el cursor

Con qué se hace cada uno

Las barras de error, la caja con atípicos y la telaraña salen de matplotlib y seaborn. El Sankey y la superficie que se puede girar son terreno de plotly — la librería del Módulo 4.

No los uses por lucirte

Un gráfico raro obliga a la audiencia a aprender a leerlo antes de entender el dato. Solo vale la pena cuando unas barras de verdad no responden la pregunta.

Capítulo 5

Lo que separa un gráfico de una captura

La misma gráfica, los mismos datos. Cinco arreglos de una línea cada uno la convierten en algo que se entiende sin que tú estés al lado explicando. Míralos ocurrir.

una captura lo que sale de matplotlib por defecto
ventas_cop by categoria_producto Tecnología concentra el 37% de las ventas Alimentos Electrodom. Muebles Papelería Tecnología 200 400 600 800 millones COP
5 pasos · 1 línea de código cada uno · unos 20 segundos
1Un título que afirma, no que describe No "Ventas por categoría", sino "Tecnología concentra el 37% de las ventas": ahorra la explicación.
2Unidades en los ejes Un número sin unidad no es un dato. set_xlabel("millones COP").
3Orden por valor, no alfabético Ordenada se lee el triple de rápido: .sort_values().
4Gris para todo y un color para lo importante Si todas las barras son del mismo tipo, un color por barra no informa: es ruido.
5Fuera lo que no aporta Marco, rejilla y bordes sobrantes compiten con el dato. Nunca 3D ni sombras.
python · los cinco arreglos
# 3 · ordenar por valor
g = g.sort_values()

# 4 · gris para todas y color solo para la mayor
colores = ["#33415c"] * len(g)
colores[-1] = "#c8f25a"
ax.barh(g.index, g.values, color=colores)

# 1 y 2 · título que afirma y unidades
ax.set_title("Tecnología concentra el 37% de las ventas")
ax.set_xlabel("millones COP")

# 5 · quitar los bordes que no aportan
for lado in ["top", "right"]:
    ax.spines[lado].set_visible(False)
Capítulo 6

Guardar la figura: savefig

plt.show() la muestra y la descarta. Para que quede un archivo hay que pedirlo — y antes de show(), no después.

1 El orden · la misma figura por dos caminos

así sí la figura, en memoria savefig() ventas.png con la gráfica
así no la figura, en memoria show() la muestra y la vacía savefig() ventas.png en blanco

Guardar va primero. show() entrega la figura a la ventana del visor y la deja vacía: lo que se guarde después ya no tiene nada dentro.

2 La resolución · la misma gráfica, dos valores de dpi

La misma gráfica guardada con dpi bajo, se ve pixelada
dpi=24 · se pixela
La misma gráfica guardada con dpi alto, se ve nítida
dpi=200 · nítida

Los tres argumentos que importan

dpi=300bbox_inches="tight"transparent=True

dpi es la resolución: 300 para imprimir, 150 basta para pantalla · bbox_inches recorta el margen sobrante · transparent quita el fondo blanco.

python
from pathlib import Path

SALIDA = Path(__file__).parent / "graficas"
SALIDA.mkdir(exist_ok=True)

fig.savefig(SALIDA / "ventas_categoria.png",
            dpi=300, bbox_inches="tight")

plt.show()   # después de guardar
.png para pegar en documentos. .svg si necesitas ampliarla sin que se pixele: no guarda píxeles, guarda las instrucciones para dibujarla.
Capítulo 7

Un tablero con subplots

Un tablero no es más que varios ejes dentro de una misma figura. plt.subplots(filas, columnas) devuelve una rejilla y dibujas en cada casilla, nombrándola por su fila y su columna.

python · rejilla 3x2
fig, axes = plt.subplots(3, 2, figsize=(12, 11))

axes[0, 0].barh(g.index, g.values, color="#c8f25a")
axes[0, 0].set_title("Ventas por categoría")

axes[0, 1].hist(df["unidades"], bins=30)
axes[0, 1].set_title("Distribución de unidades")

sns.boxplot(data=df, x="canal_venta", y="margen_pct",
            ax=axes[1, 0])
axes[1, 0].set_title("Margen por canal")

sns.scatterplot(data=df, x="unidades", y="ventas_cop",
                ax=axes[1, 1])
axes[1, 1].set_title("Unidades y ventas")

axes[2, 0].plot(mes.index, mes.values)
axes[2, 0].set_title("Ventas mes a mes")

axes[2, 1].errorbar(ic.index, ic["media"], yerr=ic["err"], fmt="o")
axes[2, 1].set_title("Margen medio y su intervalo")

fig.suptitle("Panel de ventas 2025", fontsize=16)
plt.tight_layout()

Para el conjunto

fig.suptitle()plt.tight_layout()

suptitle titula toda la figura; tight_layout evita que los títulos se pisen.

Esto es un tablero estático: una imagen. En el Módulo 4 lo convertimos en uno interactivo, con filtros y publicado en internet.

2 Así queda · plt.subplots(3, 2) = una figura con seis casillas

fig Panel de ventas 2025 ← fig.suptitle()
axes[0, 0]
axes[0, 1]
axes[1, 0]
axes[1, 1]
axes[2, 0]
axes[2, 1]

Primero la fila, después la columna, y las dos empiezan en cero — como los índices de las listas.

Para reutilizar

La plantilla de una gráfica

El mismo esqueleto sirve para cualquier gráfico: cambias la línea que dibuja y los textos. El resto se queda igual.

1 Preparar

grafica.py
from pathlib import Path
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

BASE   = Path(__file__).parent
SALIDA = BASE / "graficas"
SALIDA.mkdir(exist_ok=True)

df = pd.read_csv(BASE / "datos" / "ventas_empresa.csv")

# ── 1 · el dato que se va a dibujar ──
g = (df.groupby("categoria_producto")["ventas_cop"]
       .sum().sort_values() / 1e6)

# ── 2 · lienzo ──
fig, ax = plt.subplots(figsize=(9, 5))

2 Dibujar, explicar y guardar

grafica.py · continuación
# ── 3 · dibujar (la única línea que cambias) ──
colores = ["#33415c"] * len(g)
colores[-1] = "#c8f25a"
ax.barh(g.index, g.values, color=colores)

# ── 4 · explicar ──
ax.set_title("Tecnología lidera las ventas de 2025")
ax.set_xlabel("millones COP")
ax.set_ylabel("")
for lado in ["top", "right"]:
    ax.spines[lado].set_visible(False)

# ── 5 · guardar y mostrar ──
plt.tight_layout()
fig.savefig(SALIDA / "ventas.png", dpi=300,
            bbox_inches="tight")
plt.show()
Con tu agente: pégale la plantilla y dile "cámbiame el paso 3 por un boxplot de margen por canal". Al fijar la estructura, el resultado es predecible.

¡Manos a la Obra!

Vamos a iniciar con la práctica. A continuación encontrarás el catálogo de prompts para generar distintos tipos de gráficos interactivos usando Inteligencia Artificial.

Base de Datos Necesaria

Para probar los siguientes prompts, necesitas descargar el archivo de Excel con los datos de producción simulados.

Descargar Archivo Excel

Utiliza la flecha de la derecha para continuar y ver el primer prompt

01 • Comparar Cantidades

Gráfico de Barras

Esquema Visual del Gráfico Planta 1 Planta 2 Planta 3 Planta 4
📌 Variables en la Gráfica:

• Eje Horizontal (X): Planta

• Eje Vertical (Y): Unidades_Producidas

• Color de barras: Linea_Produccion

💡 ¿Para qué sirve? Para ver de un vistazo qué fábrica o producto tiene la mayor cantidad producida.

Prompt para IA
Crea un GRÁFICO DE BARRAS en Python (usando Seaborn o Plotly) para comparar la producción con 'datos_produccion_10000.xlsx':

- En el eje X coloca la columna 'Planta'.
- En el eje Y coloca la suma de 'Unidades_Producidas'.
- Usa la columna 'Linea_Produccion' para separar las barras por colores.
- Agrega un título claro: "Producción Total por Planta y Línea".
- Muestra los números encima de cada barra para que sea fácil de leer.
- Guarda el gráfico generado como un archivo .png de alta resolución.

Por favor, dame el código en Python bien comentado y explicado paso a paso para principiantes.
02 • Ver Porcentajes

Gráfico de Torta / Donut

Esquema Visual del Gráfico 100%
📌 Variables en la Gráfica:

• Categoría (Porciones): Estado_Lote

• Valores: Porcentaje (%) de Aprobados, Retrabajo y Rechazados

💡 ¿Para qué sirve? Para entender qué porción del total representa cada categoría.

Prompt para IA
Crea un gráfico de DONUT (gráfico circular con un hueco en el centro) en Python con 'datos_produccion_10000.xlsx':

- Utiliza la columna 'Estado_Lote' (Aprobado, Requiere Retrabajo, Rechazado).
- Muestra el porcentaje (%) de cada parte de forma clara y visible.
- Usa colores intuitivos: Verde para Aprobado, Amarillo/Naranja para Retrabajo y Rojo para Rechazado.
- Agrega un título llamativo: "Distribución del Estado de los Lotes".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Explícame el código línea por línea para entender cómo funciona.
03 • Ver Distribución

Histograma

Esquema Visual del Gráfico
📌 Variable en la Gráfica:

• Variable Numérica: Tasa_Defectos_Pct

• Agrupación: Barras continuas (Intervalos / Bins)

💡 ¿Para qué sirve? Para ver qué valores numéricos son los más comunes y cómo se agrupan los datos.

Prompt para IA
Crea un HISTOGRAMA en Python con el archivo 'datos_produccion_10000.xlsx':

- Utiliza la columna numérica 'Tasa_Defectos_Pct'.
- Divide los datos en unas 30 barras para ver cómo se agrupan.
- Pinta las barras de color azul claro con bordes bien definidos.
- Ponle nombres claros a los ejes: "Porcentaje de Defectos" en el eje X y "Cantidad de Lotes" en el eje Y.
- Agrega un título que diga "Distribución del Porcentaje de Defectos".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Explícame de forma sencilla qué nos muestra este gráfico y cómo se lee.
04 • Ver Tendencias

Gráfico de Líneas

Esquema Visual del Gráfico
📌 Variables en la Gráfica:

• Eje Horizontal (X): Anio_Mes (Tiempo)

• Eje Vertical (Y): Margen_Ganancia_USD

💡 ¿Para qué sirve? Para ver si los resultados están mejorando o empeorando con el paso de los meses.

Prompt para IA
Crea un GRÁFICO DE LÍNEAS en Python con 'datos_produccion_10000.xlsx' para ver cómo evolucionan las ganancias:

- En el eje X coloca la columna de fecha o mes 'Anio_Mes'.
- En el eje Y coloca la suma de 'Margen_Ganancia_USD'.
- Dibuja una línea verde con puntos marcadores en cada mes.
- Agrega una cuadrícula de fondo suave para que sea fácil seguir los valores.
- Título: "Evolución de Ganancias Mensuales".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Dame el código en Python con comentarios sencillos para principiantes.
05 • Encontrar Datos Raros / Atípicos

Diagrama de Caja (Boxplot)

Esquema Visual del Gráfico Línea A Línea B
📌 Variables en la Gráfica:

• Eje Horizontal (X): Linea_Produccion

• Eje Vertical (Y): Horas_Mantenimiento_Previo

💡 ¿Para qué sirve? La caja muestra la mayoría de los datos y los puntos rojos son los valores raros o atípicos.

Prompt para IA
Crea un DIAGRAMA DE CAJA (Boxplot) en Python con 'datos_produccion_10000.xlsx':

- En el eje X coloca 'Linea_Produccion'.
- En el eje Y coloca 'Horas_Mantenimiento_Previo'.
- Quiero que se vean las cajas y que los puntos atípicos (los que se salen de lo común) se pinten de color rojo para que resalten.
- Agrega un título claro: "Horas de Mantenimiento y Detección de Casos Atípicos por Línea".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Explícame de forma muy sencilla qué significa la caja y qué representan los puntos rojos que quedan afuera.
06 • Forma y Concentración

Diagrama de Violín

Esquema Visual del Gráfico Mañana Noche
📌 Variables en la Gráfica:

• Eje Horizontal (X): Turno

• Eje Vertical (Y): Temperatura_Horno_C

💡 ¿Para qué sirve? Las partes más anchas del violín muestran dónde se concentran más datos.

Prompt para IA
Crea un DIAGRAMA DE VIOLÍN en Python con 'datos_produccion_10000.xlsx':

- En el eje X coloca la columna 'Turno' (Mañana, Tarde, Noche).
- En el eje Y coloca 'Temperatura_Horno_C'.
- Usa un color diferente para cada turno.
- Dibuja la silueta suave para ver en qué partes es más ancha la figura.
- Título: "Distribución de Temperatura según el Turno".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Explícame de forma sencilla por qué se llama diagrama de violín y cómo se interpreta.
07 • Relación de 2 Variables

Dispersión Simple (Puntos)

Esquema Visual del Gráfico
📌 Variables en la Gráfica:

• Eje Horizontal (X): Horas_Mantenimiento_Previo

• Eje Vertical (Y): Tasa_Defectos_Pct

💡 ¿Para qué sirve? Para ver si cuando una variable sube, la otra también sube o baja.

Prompt para IA
Crea un GRÁFICO DE DISPERSIÓN (Scatter Plot) en Python con 'datos_produccion_10000.xlsx' para comparar dos variables numéricas:

- En el eje X coloca 'Horas_Mantenimiento_Previo'.
- En el eje Y coloca 'Tasa_Defectos_Pct'.
- Dibuja los puntos pequeños y con algo de transparencia para que se distingan bien.
- Agrega una línea de tendencia en color rojo para ver hacia dónde se inclinan los datos.
- Título: "Relación entre Horas sin Mantenimiento y Porcentaje de Defectos".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Explícame de forma sencilla si el gráfico muestra que a más horas de mantenimiento hay más o menos defectos.
08 • Colores y Tamaños

Dispersión con Agrupamiento

Esquema Visual del Gráfico
📌 Variables en la Gráfica:

• Eje X: Consumo_Energia_kWh

• Eje Y: Unidades_Producidas

• Color: Linea_Produccion

• Tamaño de círculo: Costo_Total_USD

💡 ¿Para qué sirve? Permite ver 4 cosas a la vez en una sola imagen (posición X, Y, color y tamaño).

Prompt para IA
Crea un GRÁFICO DE DISPERSIÓN CON COLORES Y TAMAÑOS (Burbujas) en Python con 'datos_produccion_10000.xlsx':

- Eje X: 'Consumo_Energia_kWh'.
- Eje Y: 'Unidades_Producidas'.
- Color de los puntos: Diferencia los puntos según la columna 'Linea_Produccion'.
- Tamaño de los puntos: Que los círculos sean más grandes si el 'Costo_Total_USD' es mayor.
- Agrega una leyenda clara para identificar qué significa cada color.
- Título: "Producción vs Energía por Línea de Fabricación".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Explícame paso a paso cómo interpretar los puntos grandes vs los pequeños.
09 • Cuadrícula de Colores

Mapa de Calor (Heatmap)

Esquema Visual del Gráfico
📌 Variables en la Gráfica:

• Columnas numéricas: Antigüedad, Mantenimiento, Defectos, Energía, Ganancia.

💡 ¿Para qué sirve? Los colores intensos indican que dos variables están fuertemente relacionadas.

Prompt para IA
Crea un MAPA DE CALOR (Heatmap) en Python usando el archivo 'datos_produccion_10000.xlsx':

- Selecciona estas columnas numéricas: 'Antiguedad_Maquina_Anios', 'Horas_Mantenimiento_Previo', 'Tasa_Defectos_Pct', 'Consumo_Energia_kWh', 'Margen_Ganancia_USD'.
- Calcula cómo se relacionan entre sí y muéstralo en una cuadrícula con colores.
- Escribe los números dentro de cada recuadro para ver el valor exacto.
- Usa colores atractivos (por ejemplo, tonos cálidos para relaciones positivas y fríos para negativas).
- Título: "Mapa de Calor: Relación entre Variables".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Explícame de forma muy sencilla cómo saber qué variables tienen mayor relación según el color.
10 • Comparación Multicriterio

Gráfico de Telaraña / Radar

Esquema Visual del Gráfico
📌 Variables en la Gráfica:

• Grupos: 4 Linea_Produccion

• Ejes: Producción, Energía, Mantenimiento, Experiencia, Ganancia

💡 ¿Para qué sirve? Como en los videojuegos, compara el perfil completo de cada grupo en varias características a la vez.

Prompt para IA
Crea un GRÁFICO DE TELARAÑA O RADAR (Spider Chart) en Python con el archivo 'datos_produccion_10000.xlsx':

- Quiero comparar las 4 'Linea_Produccion' (Automotriz, Electrónica, Empaques, Metalmecánica).
- En los ejes radiales evalúa los promedios de: Unidades Producidas, Consumo de Energía, Horas de Mantenimiento, Experiencia del Operario y Margen de Ganancia.
- Dibuja la figura de cada línea con un color diferente y un relleno suave transparente.
- Título: "Comparativa General de las Líneas de Producción".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Dame el código en Python (usando Plotly) y explícame de forma sencilla cómo se lee la figura de telaraña.
11 • Flujo de Etapas

Diagrama de Sankey

Esquema Visual del Gráfico
📌 Etapas del Flujo:

• 1. Planta → 2. Linea_Produccion → 3. Estado_Lote

💡 ¿Para qué sirve? Las bandas más gruesas indican mayor cantidad de unidades que viajan de una etapa a otra.

Prompt para IA
Crea un DIAGRAMA DE FLUJO SANKEY en Python usando Plotly y el archivo 'datos_produccion_10000.xlsx':

- Muestra el camino que sigue la producción:
  1. Desde la 'Planta' de origen.
  2. Hacia la 'Linea_Produccion'.
  3. Y finalmente hacia el 'Estado_Lote' (Aprobado, Retrabajo, Rechazado).
- Que el grosor de cada banda represente la cantidad de 'Unidades_Producidas'.
- Usa colores atractivos para que sea muy visual e interactivo.
- Título: "Flujo de Producción desde la Planta hasta el Estado Final".
- Guarda el gráfico generado como un archivo .png de alta resolución.

Dame el código en Python bien estructurado y explícame de forma sencilla cómo funciona este diagrama de flujo.
12 • Varios Gráficos a la Vez

Cuadrícula de Gráficos (Subplots)

Esquema Visual del Gráfico
📌 Variables en la Gráfica:

• Estructura: 2 filas y 3 columnas (6 gráficos en total)

• Contenido: Mezcla de líneas, barras y dispersión.

💡 ¿Para qué sirve? Para armar un mini-panel y comparar distintos comportamientos sin cambiar de ventana.

Prompt para IA
Crea una figura en Python con Subplots en un arreglo de 2 filas por 3 columnas usando 'datos_produccion_10000.xlsx'.

- Gráfico 1: Barras de 'Unidades_Producidas' por 'Planta'.
- Gráfico 2: Histograma de 'Tasa_Defectos_Pct'.
- Gráfico 3: Dispersión de 'Horas_Mantenimiento_Previo' vs 'Consumo_Energia_kWh'.
- Gráfico 4: Líneas de 'Margen_Ganancia_USD' por 'Anio_Mes'.
- Gráfico 5: Boxplot de 'Temperatura_Horno_C' por 'Turno'.
- Gráfico 6: Torta/Donut de 'Estado_Lote'.

Asegúrate de que la figura sea grande, que los gráficos no se amontonen (usa tight_layout) y ponle un título general: "Análisis General de Producción".
- Guarda la figura completa como un archivo .png de alta resolución.
13 • Arrastrar y Soltar

Dashboard HTML Interactivo

Esquema Visual del Gráfico Arrastra aquí tu base de datos
📌 Resultado del Prompt:

• Un archivo HTML único

• Funciona sin instalar Python

• Lee los datos lógicos de tu Excel automáticamente

💡 ¿Para qué sirve? Para crear una herramienta visual completa donde el usuario final solo sube el Excel y ve los gráficos al instante.

Prompt para IA
Crea un archivo HTML de un solo documento que funcione como un Dashboard interactivo.

El HTML debe tener:
1. Un área de "Arrastrar y Soltar" (Drag & Drop) para que yo pueda cargar el archivo 'datos_produccion_10000.csv'.
2. Lógica en JavaScript (puedes usar PapaParse y Chart.js o Plotly.js) para procesar los datos lógicos que contiene este dataset (Tasa de defectos, Producción, Mantenimiento, Planta).
3. Una vez cargado el archivo, deben aparecer 4 gráficos dinámicos que resuman la operación:
   - Barras: Producción total por Planta.
   - Torta: Distribución del Estado del Lote.
   - Dispersión: Horas de mantenimiento vs Defectos.
   - Líneas: Ganancia mes a mes.
4. Un diseño moderno y oscuro (puedes usar TailwindCSS vía CDN).

El código debe estar completo y listo para guardar y abrir en el navegador.
Fin del módulo 3

Ya puedes mostrar lo que encontraste

Sabes elegir el gráfico según la pregunta, hacerlo legible y guardarlo con calidad para un informe.

Hoy dominas

matplotlib · seaborn · elegir el gráfico · savefig

Lo que sigue

convertir el tablero en una app con filtros

Al final

publicarla con un enlace que puedas compartir

Trabajo Científico · @TCientifico · Democratizando la ciencia de datos