Escala de registro reversa em plotagens marítimas

Manav Narula 15 fevereiro 2024
Escala de registro reversa em plotagens marítimas

Python está bem equipado com diferentes funções para lidar com valores logarítmicos e exponenciais. Usamos as funções log() e exp() disponíveis nos módulos numpy e matemático para calcular esses valores.

Por exemplo,

print(np.log(50))
print(np.exp(3.912023005428146))

Resultado:

3.912023005428146
49.99999999999999

Muitas alterações das duas funções acima nos permitem calcular o log com bases diferentes e muito mais. Os valores exponenciais são considerados log inverso ou valores de log reverso.

É possível lidar com esses valores em gráficos e plotagens também. O módulo seaborn, que é baseado no módulo matplotlib, é usado para fins de visualização e pode criar muitos tipos diferentes de gráficos. Podemos ajustar o valor final de acordo com nossos requisitos usando funções diferentes.

Neste tutorial, aprenderemos a reverter os valores de log em plotagens marítimas em Python.

Em nosso exemplo, usaremos as funções de log para calcular os valores necessários e traçá-los usando a função violinplot() do módulo marítimo.

Veja o código abaixo,

import seaborn as sns
import numpy as np

lst = [1, 5, 8, 9, 5, 2, 5, 6, 9]

pl = sns.violinplot(y=np.log(lst))

plotagem de registro de nascidos no mar

Podemos personalizar os valores de escala do rótulo em ambos os eixos usando as funções set_yticklabels() e set_xticklabels(). Usaremos a função de log reverso com as funções acima para definir os valores do rótulo do tique.

Por exemplo,

import seaborn as sns
import numpy as np

lst = [1, 5, 8, 9, 5, 2, 5, 6, 9]

pl = sns.violinplot(y=np.log(lst))
pl.set_yticklabels([f"{np.expm1(l):.2f}" for l in pl.get_yticks()])

escala logarítmica reversa na trama marítima

A função get_yticks() retorna os rótulos padrão e calculamos seu log reverso usando a função exp(). Formatamos o resultado final para apenas duas casas decimais usando fstrings usados ​​para formatação de string em Python.

Desta forma, criamos um gráfico de violino calculando os valores de log dos elementos de uma lista e mencionando os valores originais nos rótulos de escala usando a função de log reverso.

Observe que usamos as funções do módulo numpy e não do módulo matemático em nossos exemplos. É porque as funções numpy log() e exp() podem calcular diretamente os valores necessários de uma lista ou array também.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artigo relacionado - Seaborn Tick