1
resposta

meu grafico nao esta sendo formado e eu nao consigo entender o porque

import pandas as pd import matplotlib.pyplot as plt

df = pd.read_csv('/Users/Usuario/Desktop/programação/python-curso/data vizualization file/canadian_immegration_data.csv') anos = list(map(str, range(1980,2014)))

america_sul = df.query('Region == "america do sul"')

cores = ['royalblue', 'orange', 'forestgreen', 'orchid', 'purple', 'brown', 'slateblue', 'gray', 'olive', 'navy', 'teal', 'tomato']

fig, ax = plt.subplots(figsize=(12,5)) ax.bar(america_sul.index, america_sul['Total'], color=cores) ax.set_title('Imigração da América do Sul para o Canadá\n1980 a 2013', loc='left', fontsize=18) ax.set_ylabel('Número de imigrantes', fontsize=14) ax.set_xlabel('') ax.yaxis.set_tick_params(labelsize=12) ax.xaxis.set_tick_params(labelsize=12)

plt.show()

1 resposta

Olá, Thiago

Tudo bem?

Percebi que o gráfico não foi gerado por duas razões importantes que merecem atenção.

Inicialmente, após carregar os dados, foi omitido o passo de definir a coluna "País" como índice do DataFrame. Antes de prosseguir com a criação da lista de anos, você deve realizar essa etapa utilizando o seguinte trecho de código:

df.set_index('País', inplace=True)

Além disso, quanto ao filtro dos dados da América do Sul, identifiquei um pequeno equívoco. A coluna correta a ser utilizada não é "Region", e sim "Região". Também é importante levar em consideração a forma exata como o nome da região está escrito. O código correto para realizar essa filtragem é:

america_sul = df.query('Região == "América do Sul"')

Com essas correções, estou certa de que você conseguirá prosseguir com a criação do gráfico. Caso surjam mais dúvidas ou necessite de assistência adicional, estou aqui para ajudar!

Bons estudos!