Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafío: visualizando datos de ventas de tiendas diferentes

Trabajas como Analista de Datos en una empresa minorista y te asignaron la tarea de crear una figura con subgráficos que muestre la variación en el número de ventas en cuatro tiendas diferentes a lo largo de un año. La gerencia de la empresa necesita visualizar claramente las tendencias de ventas en cada tienda, para que puedan tomar decisiones estratégicas sobre inventarios y acciones de marketing. Para ello, debes crear cuatro subgráficos dispuestos en dos filas y dos columnas, donde cada subgráfico represente una tienda diferente. En este desafío, cada subgráfico debe presentar un gráfico de líneas que muestre la variación del número de ventas a lo largo de los meses del año.

import pandas as pd
import numpy as np

tiendas = ['A', 'B', 'C', 'D']
ventas_2022 = {
    'Ene': [100, 80, 150, 50],
    'Feb': [120, 90, 170, 60],
    'Mar': [150, 100, 200, 80],
    'Abr': [180, 110, 230, 90],
    'May': [220, 190, 350, 200],
    'Jun': [230, 150, 280, 120],
    'Jul': [250, 170, 300, 140],
    'Ago': [260, 180, 310, 150],
    'Sep': [240, 160, 290, 130],
    'Oct': [220, 140, 270, 110],
    'Nov': [400, 220, 350, 190],
    'Dec': [300, 350, 400, 250]
}

df = pd.DataFrame(ventas_2022, index=tiendas)
df.index.name = 'Tienda'

print(df)

import matplotlib.pyplot as plt

fig, axs = plt.subplots(2, 2, figsize=(10, 6))
fig.subplots_adjust(hspace=0.5, wspace=0.3)
fig.suptitle('Ventas mensuales en las 4 tiendas durante 2022')

axs[0,0].plot(df.columns, df.loc['A'])
axs[0,0].set_title('Tienda A')

axs[0,1].plot(df.columns, df.loc['B'])
axs[0,1].set_title('Tienda B')

axs[1,0].plot(df.columns, df.loc['C'])
axs[1,0].set_title('Tienda C')

axs[1,1].plot(df.columns, df.loc['D'])
axs[1,1].set_title('Tienda D')


ymin = 0
ymax = 450

for ax in axs.ravel():
    ax.set_ylim(ymin, ymax)

for ax in axs.flat:
    ax.set_xlabel('Mes')
    ax.set_ylabel('Ventas')
    ax.grid()

plt.show()
1 respuesta

¡Hola, Paul!

Parece que estás en buen camino para completar el desafío de visualización de datos. Tu código está bastante bien estructurado y parece que ya has creado los subgráficos para cada tienda. Aquí hay algunos puntos que puedes considerar para asegurarte de que tu gráfico es claro y cumple con los requisitos:

  1. Títulos y Etiquetas: Ya has añadido títulos a cada subgráfico y etiquetas a los ejes, lo cual es excelente. Esto ayuda a que la gerencia entienda fácilmente los datos.

  2. Rango de Ejes: Has establecido un rango uniforme para el eje y (ymin = 0 y ymax = 450), lo cual es útil para comparar las tendencias de ventas entre las tiendas.

  3. Ajuste de Espaciado: Has ajustado el espaciado entre los subgráficos con fig.subplots_adjust(hspace=0.5, wspace=0.3), lo cual es importante para que los gráficos no se vean amontonados.

  4. Grilla: La inclusión de una grilla en cada subgráfico (ax.grid()) es una buena práctica, ya que facilita la lectura de los gráficos.

  5. Tamaño de la Figura: El tamaño de la figura (figsize=(10, 6)) parece adecuado, pero si sientes que los subgráficos están muy pequeños o muy grandes, puedes ajustar este tamaño.

Si todo está funcionando como esperas, parece que has completado el desafío con éxito. Si encuentras algún problema al ejecutar el código o si la visualización no es como esperabas, verifica que todos los datos estén correctamente organizados y que no haya errores de sintaxis.

Espero que esta orientación te sea útil y que tu visualización sea un éxito. ¡Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!