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

[Dúvida] FutureWarning:

Boa noite pessoal,

Ao chamar a função de gerar gráfico com alguma paleta, gera o gráfico normalmente porém to obtendo um aviso:

Meu código:

def gerar_grafico_paleta(palette):
  fig, ax = plt.subplots(figsize=(8,4))
  ax = sns.barplot(data=top_10, y=top_10.index, x='Total', orient='h', palette=palette)

  ax.set_title('Países com maior imigração para o Canadá\n1980 a 2013', loc='left', fontsize=18)
  ax.set_xlabel('Número de imigrantes', fontsize=14)
  ax.set_ylabel('')

  plt.show()    

O gráfico sai igual a aula porém está trazendo o seguinte aviso:

<ipython-input-57-85954bebc008>:3: FutureWarning: 

Passing `palette` without assigning `hue` is deprecated and will be removed in v0.14.0. Assign the `y` variable to `hue` and set `legend=False` for the same effect.

  ax = sns.barplot(data=top_10, y=top_10.index, x='Total', orient='h', palette=palette)
2 respostas
solução!

Olá Ali,

O hue é um parâmetro disponível em diversas funções do Seaborn para analisar o comportamento de uma terceira variável sobre a visualização. Nesse caso, o parâmetro palette parece estar sempre vinculado ao hue, e por isso a biblioteca reclama.. (curioso, né?) Uma saída que pensei aqui é adicionar o próprio hue como "Total".

Exemplo:

import pandas as pd
import seaborn as sns

df = pd.read_csv('canadian_immegration_data.csv').sort_values(by = "Total", ascending = False)[:10]
sns.barplot(data = df, x = 'Total', y = 'Country', hue = 'Total', palette='turbo')
plt.show()

Abraços.

agradeço esclarescimento Gustavo. abs.