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

Erro ao plotar o displot com o seaborn

Olá, pessoal! seguindo a parte Histograma da aula "Distribuição de frequência", digitei o seguinte código:

ax = sns.displot(dados.Altura, kde=False)
ax.figure.set_size_inches(12,6)
ax.set_title('Distribuição de frequências - Altura', fontsize = 18)
ax.set_xlabel('Metros', fontsize=14)
ax

Porém obtive o seguinte erro: AttributeError Traceback (most recent call last) in () 1 ax = sns.displot(dados.Altura, kde=False) ----> 2 ax.figure.set_size_inches(12,6) 3 ax.set_title('Distribuição de frequências - Altura', fontsize = 18) 4 ax.set_xlabel('Metros', fontsize=14) 5 ax

AttributeError: 'FacetGrid' object has no attribute 'figure'

Alguém pode me ajudar a entender o que pode estar errado?

6 respostas

Oii Larissa, tudo bem? Para que não ocorra esse erro, você deve deixar o parâmetro hist definido como True ou False, dessa forma:

ax = sns.distplot(dados.Altura, kde=False, hist=True)

Me conta se deu certo por ai!

Bons estudos ^^

Olá Larissa, não sei explicar o motivo... mas dados um espaço entre o grafico e o figure.set_size_inches funcionou aqui:

ax = sns.distplot(dados.Altura, kde = False)

ax.figure.set_size_inches(12,6)
ax.set_title('Distribuição de Frequencias - Altura', fontsize=18)
ax.set_xlabel('Metros', fontsize=14)
ax

Me avise se funcionou ai

Oi, Sthefanie e Cláudio, obrigada pelas respostas... infelizmente nenhuma delas funcionou :( A solução do Cláudio continua retornando o erro "AttributeError: 'FacetGrid' object has no attribute 'figure'" e a da Sthefanie retorna o erro "'Rectangle' object has no property 'hist'". Não sei o que fazer pois fiz igualzinho a aula :(

Oii Larissa! Tudo bem?

Consegue me mandar seu código completo pra eu dar uma olhadinha aqui?

Fico no aguardo.

solução!

Oi, Sthefanie! acho que encontrei uma solução... Então, eu fui preenchendo o notebook do curso conforme ensinado nas aulas, aí na aula de histograma o código foi o seguinte (para plotar um histograma da variável altura):

import pandas as pd
import seaborn as sns
dados = pd.read_csv('dados.csv')
ax = sns.displot(dados.Altura, kde=False)
ax.figure.set_size_inches(12,6)
ax.set_title('Distribuição de frequências - Altura', fontsize = 18)
ax.set_xlabel('Metros', fontsize=14)
ax

Porém percebi que usando sns.histplot em vez de sns.distplot não dava mais o erro. Obrigada pela ajuda!

Ahhh que legal que você conseguiu resolver e ainda compartilhar conosco seu conhecimento ♥

Espero que esteja gostando do curso!

Bons estudos ^^

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software