matplotlib.testing#

matplotlib.test()#

matplotlib. test ( verbosidade = None , cobertura = False , ** kwargs ) [source] #

[ Obsoleto ] Execute o conjunto de testes matplotlib.

Notas

Obsoleto desde a versão 3.5: Use pytest em seu lugar.

matplotlib.testing#

Funções auxiliares para teste.

matplotlib.testing. set_font_settings_for_testing ( ) [fonte] #
matplotlib.testing. set_reproducibility_for_testing ( ) [fonte] #
matplotlib.testing. setup ( ) [fonte] #
matplotlib.testing. subprocess_run_helper ( func , * args , timeout , extra_env = None ) [source] #

Execute uma função em um subprocesso.

Parâmetros :
função função

A função a ser executada. Deve estar em um módulo que seja importável.

*args str

Quaisquer argumentos de linha de comando adicionais a serem passados ​​no primeiro argumento para subprocess.run.

extra_env dict[str, str]

Quaisquer variáveis ​​de ambiente adicionais a serem definidas para o subprocesso.

matplotlib.testing.compare#

Utilitários para comparar resultados de imagens.

matplotlib.testing.compare. calcular_rms ( esperada_imagem , imagem_real ) [fonte] #

Calcule os erros por pixel e, em seguida, calcule a raiz do erro quadrático médio.

matplotlib.testing.compare. comparáveis_formatos ( ) [fonte] #

Retorna a lista de formatos de arquivo que compare_imagespodem ser comparados neste sistema.

Devoluções :
lista de str

Ex .['png', 'pdf', 'svg', 'eps']

matplotlib.testing.compare. compare_images ( esperado , real , tol , in_decorator = False ) [fonte] #

Compare dois arquivos de "imagem" verificando as diferenças dentro de uma tolerância.

Os dois nomes de arquivo fornecidos podem apontar para arquivos que podem ser convertidos para PNG por meio do converterdicionário. O RMS subjacente é calculado com a calculate_rmsfunção.

Parâmetros :
esperado str

O nome do arquivo da imagem esperada.

str real

O nome do arquivo da imagem real.

flutuador de pedágio

A tolerância (uma diferença de valor de cor, onde 255 é a diferença máxima). O teste falha se a diferença média de pixels for maior que esse valor.

in_decorator bool

Determina o formato de saída. Se chamado do decorator image_comparison, deve ser True. (padrão = falso)

Devoluções :
Nenhum ou dict ou str

Retorna Nenhum se as imagens forem iguais dentro da tolerância especificada.

Se as imagens forem diferentes, o valor de retorno dependerá de in_decorator . Se in_decorator for true, um dict com as seguintes entradas é retornado:

  • rms : O RMS da diferença de imagem.

  • esperado : O nome do arquivo da imagem esperada.

  • real : O nome do arquivo da imagem real.

  • diff_image : O nome do arquivo da imagem de diferença.

  • tol : A tolerância de comparação.

Caso contrário, uma representação de cadeia de caracteres de várias linhas legível por humanos dessas informações é retornada.

Exemplos

img1 = "./baseline/plot.png"
img2 = "./output/plot.png"
compare_images(img1, img2, 0.001)

matplotlib.testing.decorators#

classe matplotlib.testing.decorators. CleanupTestCase ( methodName = 'runTest' ) [source] #

Bases:TestCase

[ Reprovado ] Um wrapper para unittest.TestCase que inclui operações de limpeza.

Notas

Obsoleto desde a versão 3.6: Use uma cópia fornecida do código existente, incluindo a função privada _cleanup_cm.

Crie uma instância da classe que usará o método de teste nomeado quando executado. Gera um ValueError se a instância não tiver um método com o nome especificado.

classmethod setUpClass ( ) [fonte] #

Hook método para configurar o acessório de classe antes de executar testes na classe.

classmethod tearDownClass ( ) [fonte] #

Hook método para desconstruir o acessório de classe depois de executar todos os testes na classe.

matplotlib.testing.decorators. check_figures_equal ( * , extensions = ('png', 'pdf', 'svg') , tol = 0 ) [fonte] #

Decorador para casos de teste que geram e comparam duas figuras.

A função decorada deve receber dois argumentos de palavra-chave, fig_test e fig_ref , e desenhar neles as imagens de teste e referência. Após o retorno da função, os números são salvos e comparados.

Esse decorador deve ser preferido image_comparisonquando possível, a fim de evitar que o tamanho do conjunto de testes aumente.

Parâmetros :
lista de extensões , padrão: ["png", "pdf", "svg"]

As extensões para testar.

flutuador de pedágio

O limite RMS acima do qual o teste é considerado reprovado.

Aumentos :
RuntimeError

Se quaisquer novas figuras forem criadas (e não posteriormente fechadas) dentro da função de teste.

Exemplos

Verifique se a chamada Axes.plotcom um único argumento é plotada contra :[0, 1, 2, ...]

@check_figures_equal()
def test_plot(fig_test, fig_ref):
    fig_test.subplots().plot([1, 3, 5])
    fig_ref.subplots().plot([0, 1, 2], [1, 3, 5])
matplotlib.testing.decorators. check_freetype_version ( ver ) [fonte] #

[ Descontinuado ]

Notas

Obsoleto desde a versão 3.6: em vez disso, use uma cópia de fornecedor do código existente de _check_freetype_version.

matplotlib.testing.decorators. limpeza ( estilo = Nenhum ) [fonte] #

[ Obsoleto ] Um decorador para garantir que qualquer estado global seja redefinido antes de executar um teste.

Parâmetros :
estilo str, dict ou lista, opcional

O(s) estilo(s) a ser(em) aplicado(s). O padrão é .["classic", "_classic_test_patch"]

Notas

Obsoleto desde a versão 3.6: Use uma cópia fornecida do código existente, incluindo a função privada _cleanup_cm.

matplotlib.testing.decorators. image_comparison ( baseline_images , extensions = None , tol = 0 , freetype_version = None , remove_text = False , savefig_kwarg = None , style = ('classic', '_classic_test_patch') ) [source] #

Compare as imagens geradas pelo teste com aquelas especificadas em baseline_images , que devem corresponder, caso contrário, uma ImageComparisonFailure exceção será gerada.

Parâmetros :
lista baseline_images ou Nenhum

Uma lista de strings especificando os nomes das imagens geradas por chamadas para Figure.savefig.

Se None , a função de teste deve usar o baseline_imagesfixture, como parâmetro ou com pytest.mark.usefixtures. Este valor só é permitido ao usar pytest.

extensões Nenhum ou lista de str

A lista de extensões a serem testadas, por exemplo, .['png', 'pdf']

Se None , o padrão é todas as extensões suportadas: png, pdf e svg.

Ao testar uma única extensão, ela pode ser incluída diretamente nos nomes passados ​​para baseline_images . Nesse caso, as extensões não devem ser definidas.

Para evitar que o tamanho do conjunto de testes aumente, incluímos apenas as saídas svgou pdfse o teste estiver exercitando explicitamente um recurso dependente desse back-end (consulte também o check_figures_equaldecorador para essa finalidade).

flutuante total , padrão: 0

O limite RMS acima do qual o teste é considerado reprovado.

Devido a pequenas diferenças esperadas nos cálculos de ponto flutuante, em sistemas de 32 bits, um adicional de 0,06 é adicionado a esse limite.

freetype_version str ou tupla

A versão freetype esperada ou intervalo de versões para este teste passar.

remove_text bool

Remova o título e marque o texto da figura antes da comparação. Isso é útil para tornar as imagens de linha de base independentes de variações na renderização de texto entre diferentes versões do FreeType.

Isso não remove outros textos mais deliberados, como legendas e anotações.

ditado savefig_kwarg

Argumentos opcionais que são passados ​​para o método savefig.

estilo str, dict ou lista

Os estilos opcionais a serem aplicados ao teste de imagem. O próprio teste também pode aplicar estilos adicionais, se desejado. O padrão é .["classic", "_classic_test_patch"]

matplotlib.testing.decorators. remove_ticks_and_titles ( figura ) [fonte] #

matplotlib.testing.exceptions#

exceção matplotlib.testing.exceptions. ImageComparisonFailure [fonte] #

Bases:AssertionError

Gere esta exceção para marcar um teste como uma comparação entre duas imagens.