6. Visualización de Datos Interactiva con Python

En esta lección, exploraremos el uso de bibliotecas de Python para crear visualizaciones de datos interactivas. Aprenderás a generar varios tipos de gráficos, incluidos gráficos de líneas, gráficos de barras y gráficos circulares. También cubriremos cómo interactuar con estos gráficos de manera dinámica. Al final de esta lección, tendrás una comprensión sólida de cómo crear y manipular representaciones visuales de datos en Python.

Note

Asegúrate de tener instaladas todas las bibliotecas de Python necesarias. Esta lección asume que ya estás familiarizado con NumPy y Matplotlib.

6.1. Gráficos de Líneas

Comencemos con un gráfico de líneas simple para comparar las temperaturas medias en Argentina entre los años 1991 y 2020.

import matplotlib.pyplot as plt

temp_1991 = [20.5, 20.0, 18.9, 14.8, 11.9, 8.2, 7.3, 8.9, 12.4, 13.8, 17.3, 18.6]
temp_2020 = [21.5, 20.1, 20.0, 14.9, 11.0, 8.3, 6.4, 9.7, 12.5, 15.5, 19.0, 20.3]

plt.plot(temp_1991, linewidth=3, label='1991')
plt.plot(temp_2020, linestyle='dashed', linewidth=3, label='2020')

plt.ylabel('Temperaturas')
plt.title('Comparativa de 1991 y 2020')
plt.xlabel('Mes')
plt.legend()
plt.grid(True)
display(plt, "plot_area")  # Reemplaza con plt.show() si ejecutas localmente

Note

Reemplaza display(plt) con plt.show() si ejecutas el código localmente.

Ahora, etiquetemos los meses en el eje x:

meses = ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun',
         'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic']

plt.plot(meses, temp_1991, linewidth=3, label='1991')
plt.plot(meses, temp_2020, linestyle='dashed', linewidth=3, label='2020')

plt.ylabel('Temperaturas')
plt.title('Comparativa de 1991 y 2020')
plt.xlabel('Mes')
plt.legend()
plt.grid(True)
display(plt, "plot_area")  # Reemplaza con plt.show() si ejecutas localmente

6.2. Gráficos de Barras

Compararemos las temperaturas usando un gráfico de barras:

import numpy as np

ancho = 0.35
x = np.arange(len(temp_1991))
fig, ax = plt.subplots()
rects1 = ax.bar(x - ancho/2, temp_1991, ancho, color='b', label='1991')
rects2 = ax.bar(x + ancho/2, temp_2020, ancho, color='g', label='2020')

ax.set_ylabel('Temperaturas')
ax.set_title('Comparativa')
ax.set_xticks(x)
ax.set_xticklabels(meses)
ax.legend()

display(plt, "plot_area")  # Reemplaza con plt.show() si ejecutas localmente

6.3. Gráficos Circulares

Visualiza la distribución de estudiantes mujeres en diferentes áreas de estudio en 2018 usando un gráfico circular:

est_mujeres = [10512, 4774, 16232, 22904, 36700]
etiquetas = ['Ciencias Aplicadas', 'Ciencias Básicas',
             'Ciencias de la Salud', 'Ciencias Humanas',
             'Ciencias Sociales']

fig1, ax = plt.subplots()
ax.set_title('Estudiantes 2018 según área de estudio')
ax.axis('equal')
ax.pie(est_mujeres, labels=etiquetas, autopct='%1.2f%%')

display(plt, "plot_area")   # Reemplaza con plt.show() si ejecutas localmente

6.4. Interactúa con tus Widgets

Prueba cambiar el grado de un polinomio:

import numpy as np
import matplotlib.pyplot as plt

def plot_function(degree=3, num_points=5):
    # Generar valores de x
    x = np.linspace(-10, 10, num_points)
    # Calcular valores de y basados en el grado del polinomio
    y = x**degree

    # Crear una nueva figura con tamaño especificado
    plt.figure(figsize=(12, 8))
    # Graficar los valores de x e y con círculos rojos y una línea
    plt.plot(x, y, 'ro-')
    # Agregar líneas de cuadrícula al gráfico
    plt.grid(True)
    # Mostrar el gráfico
    display(plt, "plot_area")  # Reemplaza con plt.show() si ejecutas localmente

# Uso de ejemplo
degree = 3  # Establece el grado del polinomio
num_points = 5  # Establece el número de puntos a graficar
plot_function(degree, num_points)

6.5. Ejercicio: Crea tu propia Visualización

Tarea: Crea un gráfico de barras que compare las temperaturas medias en Argentina a lo largo de tres años diferentes: 1991, 2000 y 2020.

Pista: Puedes usar los datos para el año 2000 de la siguiente manera:

temp_2000 = [21.2, 19.4, 17.0, 14.5, 10.1, 8.1, 5.6, 8.9, 10.8, 14.9, 16.3, 19.6]

Sigue los pasos de los ejemplos anteriores para crear y mostrar tu gráfico.

6.6. Editor Interactivo

Note

Usa este editor para ejecutar los códigos, practicar y hacer ejercicios para ver los resultados.

You have attempted of activities on this page