1
resposta

Desafio: criando um gráfico de linhas com a biblioteca Seaborn

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.read_csv('/content/drive/MyDrive/imigrantes_canada.csv')

paises = ['Brasil', 'Argentina', 'Peru', 'Colômbia']

anos = list(map(str, range(1980, 2014)))

top_4 = (
    df[df['País'].isin(paises)]
    .set_index('País')
    [anos]
)

top_4_long = (
    top_4
    .reset_index()              # País vira coluna
    .melt(
        id_vars='País',
        var_name='Ano',
        value_name='Total'
    )
)
#Plotar grafico
plt.rcParams['font.family'] = 'DejaVu Sans'

plt.figure(figsize=(10, 5))

sns.lineplot(
    data=top_4_long,
    x='Ano',
    y='Total',
    hue='País',
    palette='viridis',
    linewidth=2.5
)

anos_5 = [str(ano) for ano in range(1980, 2014, 5)]
plt.xticks(anos_5)

plt.title(
    'Imigração Argentina, Brasil, Colômbia e Peru\npara o Canadá (1980–2013)',
    fontsize=18,
    loc='left',
    color='b'
)
plt.xlabel('Ano', fontsize=14, color='b')
plt.ylabel('Número de imigrantes', fontsize=14, color='b')

plt.grid(alpha=0.8)
plt.legend(title='País')

plt.show()

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Adriely! Como vai?

Parabéns pela resolução da atividade!

Observei que você organizou muito bem os dados ao transformar o DataFrame em formato longo, utilizou o Seaborn para criar uma visualização clara e ainda aplicou personalizações nos títulos e eixos para dar destaque às informações.

Uma dica interessante para o futuro é adicionar marcadores nos pontos da linha para facilitar a leitura dos valores. Assim:

sns.lineplot(
    data=top_4_long,
    x='Ano',
    y='Total',
    hue='País',
    palette='viridis',
    linewidth=2.5,
    marker='o'
)

Isso faz com que cada ano seja representado com um ponto visível, tornando a análise mais intuitiva.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!