Como usar uma escala logarítmica em gráficos seaborn
Você pode usar as funções plt.xscale() e plt.yscale() para usar uma escala logarítmica para o eixo xey, respectivamente, em um gráfico marinho:
import matplotlib. pyplot as plt import seaborn as sns #create scatterplot with log scale on both axes sns. scatterplot (data=df, x=' x ', y=' y ') plt. xscale ('log') plt. yscale ('log')
O exemplo a seguir mostra como usar essas funções na prática.
Exemplo: Usando escala logarítmica no gráfico Seaborn
Suponha que temos o seguinte DataFrame do pandas:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' x ': [2, 5, 6, 7, 9, 13, 14, 16, 18],
' y ': [200, 1700, 2300, 2500, 2800, 2900, 3400, 3900, 11000]})
#view DataFrame
print (df)
xy
0 2 200
1 5 1700
2 6 2300
3 7 2500
4 9 2800
5 13 2900
6 14 3400
7 16 3900
8 18 11000
Podemos usar a função scatterplot() em seaborn para criar um gráfico de dispersão que usa uma escala linear no eixo x e no eixo y:
import seaborn as sns #create scatterplot with default axis scales sns. scatterplot (data=df, x=' x ', y=' y ')
Para usar uma escala logarítmica apenas para o eixo y, podemos usar a seguinte sintaxe:
import matplotlib. pyplot as plt import seaborn as sns #create scatterplot with log scale on y-axis sns. scatterplot (data=df, x=' x ', y=' y ') plt. yscale ('log')
Observe que o eixo Y agora usa uma escala logarítmica.
Também podemos usar uma escala logarítmica no eixo x se quisermos:
import matplotlib. pyplot as plt import seaborn as sns #create scatterplot with log scale on both axes sns. scatterplot (data=df, x=' x ', y=' y ') plt. yscale (' log ') plt. xscale (' log ')
Observe que ambos os eixos agora usam uma escala logarítmica.
Relacionado: Quando você deve usar uma escala logarítmica em gráficos?
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns no Seaborn:
Como adicionar um título aos gráficos Seaborn
Como girar rótulos de eixo em gráficos Seaborn
Como alterar os rótulos dos eixos em um gráfico Seaborn