matplotlib.testing#

matplotlib.test()#

matplotlib. prueba ( verbosidad = Ninguno , cobertura = Falso , ** kwargs ) [fuente] #

[ Obsoleto ] Ejecute el conjunto de pruebas matplotlib.

notas

En desuso desde la versión 3.5: use pytest en su lugar.

matplotlib.testing#

Funciones auxiliares para pruebas.

matplotlib.pruebas. set_font_settings_for_testing ( ) [fuente] #
matplotlib.pruebas. set_reproducibility_for_testing ( ) [fuente] #
matplotlib.pruebas. configuración ( ) [fuente] #
matplotlib.pruebas. subprocess_run_helper ( función , * argumentos , tiempo de espera , extra_env = Ninguno ) [fuente] #

Ejecutar una función en un subproceso.

Parámetros :
funcion funcion

La función a ejecutar. Debe estar en un módulo que sea importable.

* cadena de argumentos

Cualquier argumento de línea de comando adicional que se pase en el primer argumento a subprocess.run.

extra_env dictado [str, str]

Cualquier variable de entorno adicional que se establezca para el subproceso.

matplotlib.testing.compare#

Utilidades para comparar resultados de imágenes.

matplotlib.testing.compare. calcular_rms ( imagen_esperada , imagen_real ) [fuente] #

Calcule los errores por píxel, luego calcule el error cuadrático medio.

matplotlib.testing.compare. formatos_comparables ( ) [fuente] #

Devuelve la lista de formatos de archivo que compare_imagesse pueden comparar en este sistema.

Devoluciones :
lista de str

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

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

Compare dos archivos de "imagen" comprobando las diferencias dentro de una tolerancia.

Los dos nombres de archivo dados pueden apuntar a archivos que se pueden convertir a PNG a través del converterdiccionario. El RMS subyacente se calcula con la calculate_rmsfunción.

Parámetros :
cadena esperada

El nombre de archivo de la imagen esperada.

calle real

El nombre de archivo de la imagen real.

flotante _

La tolerancia (una diferencia de valor de color, donde 255 es la diferencia máxima). La prueba falla si la diferencia promedio de píxeles es mayor que este valor.

in_decorator booleano

Determina el formato de salida. Si se llama desde el decorador image_comparison, debería ser True. (predeterminado=falso)

Devoluciones :
Ninguno o dict o str

Devuelva Ninguno si las imágenes son iguales dentro de la tolerancia dada.

Si las imágenes difieren, el valor de retorno depende de in_decorator . Si in_decorator es verdadero, se devuelve un dict con las siguientes entradas:

  • rms : El RMS de la diferencia de imagen.

  • esperado : El nombre de archivo de la imagen esperada.

  • real : El nombre de archivo de la imagen real.

  • diff_image : El nombre de archivo de la imagen de diferencia.

  • tol : La tolerancia de comparación.

De lo contrario, se devuelve una representación de cadena de varias líneas legible por humanos de esta información.

Ejemplos

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

matplotlib.testing.decorators#

clase matplotlib.testing.decorators. CleanupTestCase ( methodName = 'runTest' ) [fuente] #

Bases:TestCase

[ Obsoleto ] Un contenedor para unittest.TestCase que incluye operaciones de limpieza.

notas

En desuso desde la versión 3.6: utilice una copia del código existente proporcionada por el proveedor, incluida la función privada _cleanup_cm en su lugar.

Cree una instancia de la clase que utilizará el método de prueba nombrado cuando se ejecute. Genera un ValueError si la instancia no tiene un método con el nombre especificado.

classmethod setUpClass ( ) [fuente] #

Método de enlace para configurar el accesorio de clase antes de ejecutar pruebas en la clase.

classmethod tearDownClass ( ) [fuente] #

Método de gancho para deconstruir el accesorio de clase después de ejecutar todas las pruebas en la clase.

matplotlib.pruebas.decoradores. check_figures_equal ( * , extensiones = ('png', 'pdf', 'svg') , tol = 0 ) [fuente] #

Decorador de casos de prueba que generan y comparan dos figuras.

La función decorada debe tomar dos argumentos de palabra clave, fig_test y fig_ref , y dibujar las imágenes de prueba y de referencia en ellos. Después de que la función regresa, las cifras se guardan y comparan.

Se debe preferir este decorador image_comparisoncuando sea posible para evitar que el tamaño del conjunto de pruebas se dispare.

Parámetros :
lista de extensiones , por defecto: ["png", "pdf", "svg"]

Las extensiones a probar.

flotante _

El umbral RMS por encima del cual se considera fallida la prueba.

aumenta :
Error de tiempo de ejecución

Si se crean nuevas figuras (y no se cierran posteriormente) dentro de la función de prueba.

Ejemplos

Verifique que llamar Axes.plotcon un solo argumento lo grafica 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.pruebas.decoradores. check_freetype_version ( ver ) [fuente] #

[ Obsoleto ]

notas

En desuso desde la versión 3.6: use una copia del proveedor del código existente de _check_freetype_version en su lugar.

matplotlib.pruebas.decoradores. limpieza ( estilo = Ninguno ) [fuente] #

[ Obsoleto ] Un decorador para garantizar que cualquier estado global se restablezca antes de ejecutar una prueba.

Parámetros :
estilo str, dict o list, opcional

El(los) estilo(s) a aplicar. El valor predeterminado es .["classic", "_classic_test_patch"]

notas

En desuso desde la versión 3.6: utilice una copia del código existente proporcionada por el proveedor, incluida la función privada _cleanup_cm en su lugar.

matplotlib.pruebas.decoradores. image_comparison ( baseline_images , extensiones = Ninguno , tol = 0 , freetype_version = Ninguno , remove_text = False , savefig_kwarg = Ninguno , estilo = ('clásico', '_clásico_prueba_parche') ) [fuente] #

Compare las imágenes generadas por la prueba con las especificadas en las imágenes de línea base , que deben corresponder, de lo contrario, ImageComparisonFailure se generará una excepción.

Parámetros :
lista de imágenes_baseline o ninguna

Una lista de cadenas que especifican los nombres de las imágenes generadas por las llamadas a Figure.savefig.

Si es Ninguno , la función de prueba debe usar el baseline_imagesaccesorio, ya sea como un parámetro o con pytest.mark.usefixtures. Este valor solo está permitido cuando se usa pytest.

extensiones Ninguna o lista de str

La lista de extensiones para probar, por ejemplo, .['png', 'pdf']

Si no hay ninguna , las extensiones predeterminadas son todas compatibles: png, pdf y svg.

Al probar una sola extensión, se puede incluir directamente en los nombres que se pasan a las imágenes_baseline . En ese caso, no se deben establecer extensiones .

Para evitar que el tamaño del conjunto de pruebas aumente, solo incluimos las salidas svgo pdfsi la prueba ejecuta explícitamente una función que depende de ese backend (consulte también el check_figures_equaldecorador para ese fin).

flotante tol , por defecto: 0

El umbral RMS por encima del cual se considera fallida la prueba.

Debido a las pequeñas diferencias esperadas en los cálculos de coma flotante, en los sistemas de 32 bits se agrega un 0,06 adicional a este umbral.

freetype_version str o tuple

La versión de tipo libre esperada o el rango de versiones para pasar esta prueba.

eliminar_texto booleano

Elimine el título y marque el texto de la figura antes de la comparación. Esto es útil para hacer que las imágenes de referencia sean independientes de las variaciones en la representación del texto entre diferentes versiones de FreeType.

Esto no elimina otro texto más deliberado, como leyendas y anotaciones.

dictado savefig_kwarg

Argumentos opcionales que se pasan al método savefig.

estilo str, dict o list

Los estilos opcionales que se aplicarán a la prueba de imagen. La prueba en sí también puede aplicar estilos adicionales si lo desea. El valor predeterminado es .["classic", "_classic_test_patch"]

matplotlib.pruebas.decoradores. remove_ticks_and_titles ( figura ) [fuente] #

matplotlib.testing.exceptions#

excepción matplotlib.testing.exceptions. ImageComparisonFailure [fuente] #

Bases:AssertionError

Genera esta excepción para marcar una prueba como una comparación entre dos imágenes.