Personalizando rótulos de escala de eixo Matplotlib para precisão numérica
Ao usar a biblioteca Matplotlib em Python para plotar conjuntos de dados x-y simples, é comum encontrar valores de eixo mudar do formato numérico padrão para a notação científica com forma exponencial ao ampliar seções específicas do gráfico. Isso pode ser indesejável, pois obscurece os valores originais.
Para evitar esse comportamento e manter a formatação numérica original, é necessário ajustar a formatação do rótulo do eixo. Por padrão, o Matplotlib usa um ScalerFormatter para rótulos de escala. Este formatador pode utilizar uma mudança constante, resultando em notação científica ao lidar com alterações fracionárias muito pequenas em valores visíveis.
Para desabilitar esta mudança constante e forçar a formatação numérica padrão, o seguinte código pode ser empregado:
import matplotlib.pyplot as plt
plt.plot(np.arange(0, 100, 10) 1000, np.arange(0, 100, 10))
ax = plt.gca()
ax.get_xaxis().get_major_formatter().set_useOffset(False)
plt.draw()
Para casos em que a notação científica é totalmente indesejável, o seguinte código pode ser usado:
ax.get_xaxis().get_major_formatter().set_scientific(False)
Alternativamente, o controle global sobre esse comportamento pode ser alcançado por meio do rcparam axes.formatter.useoffset. Ao alterar esse parâmetro, é possível impor a formatação numérica padrão ou a notação científica uniformemente em todos os rótulos de escala dos eixos.
Essa personalização garante que a precisão numérica seja mantida mesmo ao ampliar os gráficos, proporcionando aos usuários uma visão mais intuitiva. e representação precisa de seus dados.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3