Installation#

orix can be installed with pip, conda or from source, and supports Python >= 3.10. All alternatives are available on Windows, macOS and Linux.

With pip#

orix is availabe from the Python Package Index (PyPI), and can therefore be installed with pip. To install all of orix’s functionality, do:

pip install orix[all]

To install only the strictly required dependencies with limited functionality, do:

pip install orix

See Dependencies for the base and optional dependencies and alternatives for how to install these.

To update orix to the latest release:

pip install --upgrade orix

To install a specific version of orix (say version 0.12.1):

pip install orix==0.12.1

With Anaconda#

To install with Anaconda, we recommend you install it in a conda environment with the Miniconda distribution. To create an environment and activate it, run the following:

conda create --name orix-env python=3.12
conda activate orix-env

If you prefer a graphical interface to manage packages and environments, you can install the Anaconda distribution instead.

To install all of orix’s functionality, do:

conda install orix --channel conda-forge

To install only the strictly required dependencies with limited functionality, do:

conda install orix-base -c conda-forge

See Dependencies for the base and optional dependencies and alternatives for how to install these.

To update orix to the latest release:

conda update orix

To install a specific version of orix (say version 0.12.1):

conda install orix==0.12.1 -c conda-forge

From source#

The source code is hosted on GitHub. One way to install orix from source is to clone the repository from GitHub, and install with pip:

git clone https://github.com/pyxem/orix.git
cd orix
pip install --editable .

The source can also be downloaded as tarballs or zip archives via links like pyxem/orix, where the version <major.minor.patch> can be e.g. 0.10.2, and tar.gz can be exchanged with zip.

See the contributing guide for how to set up a development installation and keep it up to date.

Dependencies#

orix builds on the great work and effort of many people. This is a list of core package dependencies:

Package

Purpose

dask

Out-of-memory processing of data larger than RAM

diffpy.structure

Handling of crystal structures

h5py

Read/write of HDF5 files

matplotlib

Visualization

matplotlib-scalebar

Scale bar for crystal map plots

numba

CPU acceleration

numpy

Handling of N-dimensional arrays

pooch

Downloading and caching of datasets

scipy

Optimization algorithms, filtering and more

tqdm

Progressbars

Some functionality requires optional dependencies:

Package

Purpose

numpy-quaternion

Faster quaternion and vector multiplication

Optional dependencies can be installed either with pip install orix[all] or by installing each dependency separately, such as pip install orix numpy-quaternion.