Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro - plt.xlabel

Salve galera, tudo bom?

Pequena dúvida: fiz o projeto e gostei muito da proposta! Fiz por outro método que vou deixar exposto a baixo, mas, seja pelo método que eu segui, ou seja a pela resposta exposta no ambiente de estudos, retornaram para mim o exato mesmo erro, apontando o "plt.xlabel" e o "plt.ylabel" com a seguinte mensagem " 'str' object is not callable "

Imagino que seja coisa besta, mas dei uma pesquisada e cheguei a lugar nenhum... Se alguém tiver alguma sugestão, super agradeço desde já!

Grande abraço!

Segue a baixo linhas de código:

argentina = df.loc["Argentina", anos]
argentina_dict = {
                  'ano' : argentina.index.tolist(),
                  'imigrantes' : argentina.values.tolist()
}

dados_argentina = pd.DataFrame(argentina_dict)
plt.figure(figsize=(16,8))

plt.plot(dados_brasil['ano'], dados_brasil['imigrantes'], label = 'Brasil')
plt.plot(dados_argentina['ano'], dados_argentina['imigrantes'], label = 'Argentina')

plt.xticks(["1980", '1985', '1990', '1995', '2000', '2005', '2010'])
plt.yticks([500, 1000, 1500, 2000, 2500, 3000])

plt.xlabel("Ano")
plt.ylabel("Número de Imigrantes")

plt.title("Relação da Imigração Brasil e Argentina para o Canada")
plt.legend()
plt.show()
2 respostas

Olá, João! tudo bem?

Testei aqui o código que você enviou e deu certinho! não gerou nenhum erro, fazendo as seguintes etapas após carregar os dados:

# Deixando o País como index
df.set_index('País', inplace=True)

# Definindo os anos
anos = list(map(str, range(1980, 2014)))

# Filtrando o Brasil e Argentina
brasil = df.loc['Brasil', anos]
argentina = df.loc['Argentina', anos]

# Criando os DataFrames de cada país
brasil_dict = {'ano': brasil.index.tolist(), 'imigrantes': brasil.values.tolist()}
dados_brasil = pd.DataFrame(brasil_dict)

argentina_dict = {'ano': argentina.index.tolist(), 'imigrantes': argentina.values.tolist()}
dados_argentina = pd.DataFrame(argentina_dict)

# O código que você mandou:
import matplotlib.pyplot as plt
plt.figure(figsize=(16,8))

plt.plot(dados_brasil['ano'], dados_brasil['imigrantes'], label = 'Brasil')
plt.plot(dados_argentina['ano'], dados_argentina['imigrantes'], label = 'Argentina')

plt.xticks(["1980", '1985', '1990', '1995', '2000', '2005', '2010'])
plt.yticks([500, 1000, 1500, 2000, 2500, 3000])

plt.xlabel("Ano")
plt.ylabel("Número de Imigrantes")

plt.title("Relação da Imigração Brasil e Argentina para o Canada")
plt.legend()
plt.show()

Você pode tentar novamente e ver se o erro persiste? Se continuar dando problemas, pode chamar aqui :)

Bons estudos

solução!

Boa tarde Valquíria, tudo bom?

Voltei no exercício, e o erro persistia... Solucionei adicionando o import matplotlib.pyplot na primeira linha (dito que ele estava em um bloco anterior)... Fiz vários testes, (inclusive sem o import) e o erro não apareceu mais...

Agradeço desde já pela disponibilidade!

Grande abraço!