Visualisation library and tools for Daisy model output
See doc for examples.
The visualization tools are available from pypi
pip install daisypy-vis
Checkout repository
git clone git@github.com:daisy-model/daisypy-vis.git
cd daisypy-vis
Install package as editable
pip install -e ".[all]"
Use pyproject.toml
for package-wide settings, e.g. ignore-trailing-whitespace
.
pylint daisypy.vis doc
See pyproject.toml
for configuration.
To install test dependencies, use either the [all]
or the [test]
target, e.g.
pip install ".[test]"
To run tests
pytest
Use pytest-mpl to compare images. Generate baselines images by running
pytest --mpl-generate-path=test-data/baseline
and inspect the output...
Note that image comparison tests can fail between different version of matplotlib and freetype. You can force test against images generated with a specific version of matplotlib with
pytest --mpl-baseline-path=test-data/baseline/matplotlib-<matplotlib-version-number>
If no baseline images are available for a specific version, you can generate with
pytest --mpl-generate-path=test-data/baseline/matplotlib-<matplotlib-version-number>
and compare manually.
Baseline for animations are generated by running the tests, this will produce a new set of images in test-data/tmp
. Inspect and move to test-data/baseline
when happy. In general, text should be removed from to avoid tests failing due to slight variations in font rendering. See for example render_and_compare_animation
in daisy_vis/animate/test/test_animate_depth_timeseries.py
See pyproject.toml
for configuration. To generate coverage report
coverage run
To inspect coverage report
coverage report
Tests should as a minimum have 100% code coverage. When applicable, fixed tests should cover boundary conditions and randomized tests should sample the full parameter space.