============ 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. .. _install-with-pip: 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: .. code-block:: bash pip install "orix[all]" (The quotes are needed in a zsh shell on macOS.) To install only the strictly required dependencies with limited functionality, do: .. code-block:: bash pip install orix See :ref:`dependencies` for the base and optional dependencies and alternatives for how to install these. To update orix to the latest release: .. code-block:: bash pip install --upgrade orix To install a specific version of orix (say version 0.12.1): .. code-block:: bash pip install orix==0.12.1 .. _install-with-anaconda: 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: .. code-block:: bash 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: .. code-block:: bash conda install orix --channel conda-forge To install only the strictly required dependencies with limited functionality, do: .. code-block:: bash conda install orix-base -c conda-forge See :ref:`dependencies` for the base and optional dependencies and alternatives for how to install these. To update orix to the latest release: .. code-block:: bash conda update orix To install a specific version of orix (say version 0.12.1): .. code-block:: bash conda install orix==0.12.1 -c conda-forge .. _install-from-source: 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 `https://github.com/pyxem/orix/archive/v/orix-.tar.gz`_, where the version ```` can be e.g. ``0.10.2``, and ``tar.gz`` can be exchanged with ``zip``. See the :ref:`contributing guide ` for how to set up a development installation and keep it up to date. .. _https://github.com/pyxem/orix/archive/v/orix-.tar.gz: https://github.com/pyxem/orix/archive/v/orix-.tar.gz .. _dependencies: Dependencies ============ orix builds on the great work and effort of many people. This is a list of required package dependencies: * :doc:`dask`: Out-of-memory processing of data larger than RAM * :doc:`diffpy.structure `: Handling of crystal structures * :doc:`h5py `: Read/write of HDF5 files * `lazy_loader `__: Lazy loading of functions, classes, and modules * :doc:`matplotlib `: Visualization * :doc:`numba `: CPU acceleration * :doc:`numpy `: Handling of N-dimensional arrays * :doc:`pooch `: Downloading and caching of datasets * :doc:`scipy `: Optimization algorithms, filtering and more * `tqdm `__: Progressbars Some functionality requires optional dependencies: * `numpy-quaternion `__: Faster quaternion and vector multiplication * `matplotlib-scalebar `__: Scalebar for crystal map plots Optional dependencies can be installed either with ``pip install "orix[all]"`` or by installing each dependency separately, such as ``pip install orix numpy-quaternion matplotlib-scalebar``.