Escala de log de matplotlib

Escala de log de matplotlib
Os eixos em todos os gráficos de matplotlib são determinísticos por padrão, assim como as funções YSCale () e XSCale (). O módulo PyPlot seria usado para modificar a escala visual do eixo y ou x-eixo para uma função exponencial. A função yscale () ou xScale () requer apenas um argumento, que seria o tipo de modificação do espectro. Para alterar as dimensões para uma escala logarítmica, basta usar o termo "log" ou matplotlib.escala.

Para as funções YSCale e XSCale, especifique o módulo de escala de log. A escala logarítmica é eficaz para visualizar conjuntos de dados com números extremamente pequenos e às vezes muito enormes, pois apresenta os conjuntos de dados de tal maneira que podemos efetivamente obter a maioria dos números, mesmo sem que diferentes conjuntos sejam esmagados muito intimamente.

Vamos discutir a escala de log de matplotlib no Python neste artigo. A escala de log Matplotlib é uma escala de 10 energia. Podemos estar usando qualquer valor para a base, como 3, ou poderíamos ter usado o número E para representar o valor do log natural. O preenchimento dos componentes retratados pode ser confinado ou expandido usando diferentes origens, permitindo a visualização mais clara.

A escala de log MatlPlotlib será utilizada para desenhar eixos, grafos de dispersão, gráficos 3D e muito mais. Vamos examinar algumas amostras alternativas de escala de log e sua execução.

Ajustando a escala do eixo y para a escala de log de Matplotlib

Especificar os eixos logarítmicos é idêntico ao gráfica de eixos convencionais, além de uma única linha de código que indica o tipo de coordenadas como 'log.'

De Matplotlib Import PyPlot
Pyplot.Subparcela (1, 1, 1)
x = [30 ** i para i no intervalo (30)]
Pyplot.plot (x, color = 'vermelho', lw = 10)
Pyplot.YSCale ('log')
Pyplot.mostrar()

No caso anterior, integramos o matplotlib.Biblioteca Pyplot. Matplotlib é um pacote em python que é utilizado para desenhar gráficos e gráficos diferentes. Em seguida, criamos inicialmente a subtrama que será usada para visualizar o mapa. Usamos o loop aqui para declarar o valor do eixo x.

Além disso, empregamos o método plot () para desenhar a linha no gráfico. Podemos definir a cor e a largura da linha, fornecendo os valores para os parâmetros 'cor' e 'lw'. Os poderes de dez seriam então exibidos junto com sua função exponencial. Os valores apresentados indicarão ainda um aumento exponencial para a escala logarítmica.

Como resultado, precisaremos especificar 'log' como um parâmetro para o PyPlot.Função YSCale () para obter o eixo y em escala logarítmica. Da mesma forma, também poderíamos utilizar Pyplot.XSCale ('log') para modificar a escala do eixo x em uma escala logarítmica.

Escala de log em matplotlib utilizando os métodos semilogx () e semilogia ():

Outra maneira de criar um gráfico usando uma escala logarítmica em algum lugar ao longo do eixo x é usar o método semilogx (). O método semilogy (), por outro lado, fornece uma figura com uma escala logarítmica ao longo do eixo y.

importar pandas como PD
importar matplotlib.pyplot como plt
x = [200, 2000, 20000, 200000, 2000000]
y = [10, 12, 14, 16, 18]
fig = plt.Figura (FigSize = (6,4))
plt.dispersão (x, y)
plt.trama (x, y)
plt.grade()
plt.semilogx ()
plt.Semilogia (Basey = 3)
plt.xlabel ("eixo x", fontsize = 15)
plt.ylabel ("eixo y", fontsize = 15)
plt.mostrar()

A seguir, importando as bibliotecas, inicializamos duas matrizes que contêm valores aleatórios para os eixos X e Y. Em seguida, ajustamos o tamanho da figura. Para desenhar o gráfico de dispersão, aplicaremos o PLT.função scatter (). Enquanto isso, empregamos a função de plot () para desenhar a linha. O valor padrão da base do logaritmo é 10. A base pode ser especificada com os argumentos Basex e Basey para os métodos semilogx () e semilogia (), de acordo.

O plt.O método semilogx () possui base padrão 10 e é utilizado para converter o eixo x em uma escala de log nesse cenário. O plt.O método semilogia (), por outro. Além disso, especificamos os rótulos dos eixos como 'eixo x' e 'eixo y' usando PLT.Label () funções. Da mesma forma, o tamanho da fonte desses rótulos também é definido aqui. Agora, usamos a função show () para apresentar o gráfico.

Utilizando a função logLog ()

Nesta etapa, o método logLog () seria usado para criar escala de log no eixo x ou no eixo y.

importar pandas como PD
importar matplotlib.pyplot como plt
x = [30, 300, 3000, 30000, 300000]
y = [22, 24, 28, 26, 32]
fig = plt.Figura (FigSize = (4, 4))
plt.dispersão (x, y)
plt.trama (x, y)
plt.logLog (basex = 20, base = 4)
plt.mostrar()

Em primeiro lugar, incluímos bibliotecas necessárias para visualizações gráficas. Então, levamos duas variáveis ​​para armazenar as matrizes. Essas matrizes contêm os valores dos conjuntos de dados para os eixos x e y. O tamanho do gráfico é declarado pelo uso da função figSize (). Aqui, queremos plotar o gráfico de dispersão para que empregamos a função Scatter ().

Enquanto isso, desenhamos a linha usando o método plot (). Agora, aplicamos o método logLog () aqui. O valor da base do log para o eixo x e o eixo y é determinado principalmente por argumentos Basex e Basey. Basex = 20 e Basey = 4 entradas são fornecidas ao PLT.Método LogLog (), que produz o eixo X de escala de log de 20 neste caso.

No eixo y, a escala logarítmica base 4 está sendo usada. Além disso, o PLT.o método show () é usado para representar o gráfico.

Exibir números negativos na escala de log de matplotlib

Os conjuntos de dados incluem números mistas positivos e negativos às vezes. A escala logarítmica não será implementada nessas situações, porque valores negativos não têm valores logarítmicos.

Conclusão

Neste artigo, examinamos como utilizamos a escala de log Matplotlib no Python. O uso de escala logarítmica é uma abordagem eficiente de visualização de dados. Mostramos uma variedade de métodos para aplicar a escala logarítmica em dimensões. Esses métodos incluem semilogx () e semilogia (), bem como loglog (). Explicamos ainda como criar gráficos e histogramas de dispersão pelo uso da escala de log Matplotlib.