.. _installation: ################ Installation ################ .. role:: python(code) :language: python :class: highlight .. role:: bash(code) :language: bash :class: highlight Make sure Python 3.11, 3.12 or 3.13 and pip are installed on your system **Installing the latest official release** #. Download the optrace .tar.gz archive from the `latest release `__ #. Run :bash:`pip install ` from a terminal, where :bash:`` is the path of the downloaded file **Installing the latest git version** Open a terminal and run: :bash:`pip install "optrace @ git+https://github.com/drocheam/optrace.git"` **Installing from a package index** optrace currently isn't included in any official package index. This project is not affiliated with a package of the same name on PyPI. **Dependencies** .. list-table:: :widths: 250 600 250 :header-rows: 1 :align: left * - Dependency - Description - License * - `chardet `_ - automatic detection of file encoding - LGPLv2.1 * - `mayavi `_ - 3D plotting library - BSD 3-Clause * - `matplotlib `_ - 2D plotting library - PSF * - `numpy `_ - matrix calculations - BSD 3-Clause * - `opencv-python-headless `_ - image loading, saving and resizing - Apache 2.0 * - `pyqtdarktheme-fork `_ - setting a QT dark theme - MIT * - `pyside6 `_ - Qt GUI backend - LGPLv3 * - `scipy `_ - specialized methods for interpolation and math - BSD 3-Clause * - `tqdm `_ - animated progressbar - MPL-2.0 and MIT **Troubleshooting** * In many cases forcing the installation of a specific library version (e.g. vtk) circumvents issues of newer releases. The syntax is: :bash:`pip install --force-reinstall -v "some-package==1.2.2"`. Often older releases are hosted outside of PyPi, so you might try to locate the packages first. A list of other wheels for vtk is found `here `__. * Consult the `mayavi issues `__, `vtk issues `__ or `PySide issues `__ for current problems and solutions * Installing mayavi with no cache and without isolated building can help, see `here `__: :bash:`pip install mayavi --no-cache-dir --verbose --no-build-isolation` **Notes** Due to regular installation issues and infrequent updates of mayavi to PyPI the optrace package uses a git version of mayavi. While this solves most issues, optrace can't be published on PyPI due to this git dependency. See ``_ and ``_ or ``_.