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

Desafío: creando un gráfico de líneas con Seaborn

Tu desafío es crear una figura que muestre las tendencias de inmigración de los 4 mayores países de América Latina: Brasil, Argentina, Perú y Colombia. A través de esta creación, puedes explorar diversas posibilidades y mostrar de manera atractiva tu proceso de desarrollo. Y no nos olvidemos de las indicaciones. Esta figura debe tener una línea para cada país, título, etiquetas en los ejes, colores apropiados, un tema de la biblioteca Seaborn y una leyenda. Por lo tanto, piensa en cuestiones de accesibilidad, como el tamaño de las fuentes y el grosor de las líneas. Es importante elegir colores adecuados que no causen fatiga visual o dificulten la lectura de la información. Además, el tamaño de las fuentes debe ser lo suficientemente legible para que las personas puedan interpretar los datos fácilmente.

sns.set_theme(style='whitegrid')
sns.set_palette('muted')

fig, axs = plt.subplots(2, 2, figsize=(10, 6))
fig.subplots_adjust(hspace=0.5, wspace=0.3)
fig.suptitle('Inmigración de los 4 mayores países sudamericanos\nhacia Canadá (1980 - 2013)', fontsize=14)

sns.lineplot(x=anos, y=df.loc['Colombia', anos], ax=axs[0, 0])
axs[0, 0].set_title('Colombia')

sns.lineplot(x=anos, y=df.loc['Brasil', anos], ax=axs[0, 1])
axs[0, 1].set_title('Brasil')

sns.lineplot(x=anos, y=df.loc['Argentina', anos], ax=axs[1, 0])
axs[1, 0].set_title('Argentina')

sns.lineplot(x=anos, y=df.loc['Perú', anos], ax=axs[1, 1])
axs[1, 1].set_title('Perú')

ymin = 0
ymax = 7000

for ax in axs.ravel():
    ax.set_ylim(ymin, ymax)
    ax.xaxis.set_major_locator(plt.MultipleLocator(5))
    ax.set_xlabel('Año')
    ax.set_ylabel('Número de inmigrantes')
    ax.grid(True)

plt.show()
1 respuesta

¡Hola Paul!

Entiendo que estás trabajando en un desafío para crear un gráfico de líneas con Seaborn que muestre las tendencias de inmigración de los cuatro mayores países de América Latina hacia Canadá. El código que compartiste está bien encaminado, pero parece que se enfoca en crear gráficos separados para cada país en una cuadrícula de 2x2. Sin embargo, el desafío parece pedir un gráfico combinado con líneas para cada país en el mismo gráfico, junto con una leyenda.

Aquí tienes un ejemplo de cómo podrías modificar tu código para crear un gráfico de líneas combinado:

import matplotlib.pyplot as plt
import seaborn as sns

# Configuración del tema y paleta de colores
sns.set_theme(style='whitegrid')
sns.set_palette('muted')

# Crear la figura y el eje
plt.figure(figsize=(12, 6))
plt.title('Inmigración de los 4 mayores países sudamericanos hacia Canadá (1980 - 2013)', fontsize=16)

# Graficar las líneas para cada país
sns.lineplot(x=anos, y=df.loc['Colombia', anos], label='Colombia')
sns.lineplot(x=anos, y=df.loc['Brasil', anos], label='Brasil')
sns.lineplot(x=anos, y=df.loc['Argentina', anos], label='Argentina')
sns.lineplot(x=anos, y=df.loc['Perú', anos], label='Perú')

# Configuración de los ejes y leyenda
plt.xlabel('Año', fontsize=12)
plt.ylabel('Número de inmigrantes', fontsize=12)
plt.ylim(0, 7000)
plt.xticks(rotation=45)
plt.legend(title='País', fontsize=10, title_fontsize='13')
plt.grid(True)

# Mostrar el gráfico
plt.show()

Este código crea un único gráfico con líneas para cada país y añade una leyenda para identificar cada línea. Asegúrate de ajustar el tamaño de las fuentes y los colores para que sean accesibles y fáciles de leer. Puedes explorar diferentes paletas de colores en la documentación de Seaborn o Matplotlib para encontrar la que mejor se adapte a tus necesidades.

Espero que esto te ayude a avanzar en tu desafío. ¡Espero ver el resultado final de tu gráfico!

Espero ter ajudado y bons estudos!

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