Installation Guide

Dependencies

Colour requires various dependencies in order to run and follows the minimum supported versions as given by Scientific Python. Depending on your intended use case, i.e., using or developing, you may not need to install all of them.

Please refer to the Installation Methods for Using Colour and Installation Methods for Developing Colour sections below.

Primary Dependencies

Optional, Meshing and Plotting Dependencies

Development Dependencies

Installation Methods for Using Colour

Pypi

Colour can be easily installed from the Python Package Index by issuing this command in a shell:

pip install --user colour-science

This asciicast demonstrates how to generate a pristine Python VirtualEnv environment for Colour:

The optional features dependencies are installed as follows:

pip install --user 'colour-science[optional]'

The development dependencies are installed as follows:

pip install --user 'colour-science[development]'

The graphviz figure plotting dependencies are installed as follows:

Note

Graphviz might need to be installed beforehand, please refer to the specific section for your platform on the Graphviz download page.

pip install --user 'colour-science[graphviz]'

The meshing dependencies for gamut computations are installed as follows:

pip install --user 'colour-science[meshing]'

If you wish to read OpenEXR files, you will need to install the FreeImage plugin for Imageio as follows:

python -c "import imageio;imageio.plugins.freeimage.download()"

Continuum Analytics Anaconda

Colour is also available for Anaconda from Continuum Analytics via conda-forge:

conda install -c conda-forge colour-science

This asciicast demonstrates how to generate a pristine Python conda environment for Colour:

Github

Alternatively, you can also install directly from Github source repository:

git clone git://github.com/colour-science/colour.git
cd colour
pip install --user .

Installation Methods for Developing Colour

Note

If you are on macOS, a dedicated guide on how to setup your environment is available here: Setting Up the Development Environment on macOS.

uv

Colour adopts uv to help managing its dependencies, this is the recommended way to get started with Colour development.

Assuming python >= 3.10, < 3.13 is available on your system, the development dependencies are installed with uv as follows:

git clone git://github.com/colour-science/colour.git
cd colour
uv sync --all-extras

Those commands will create a Virtual Environment in which all the required python packages will be installed.

Tools can then be run as follows:

uv run invoke -l

or alternatively:

source .venv/bin/activate
invoke -l

Vagrant

An easy way to get all the pre-requisites at once is to use our colour-vagrant environment for Vagrant.

Please refer to the dedicated blog post for more details about its deployment: PyCharm, Vagrant, Ansible & Poetry