Skip to main content

Interactive 3D graphics for the Jupyter Notebook and JupyterLab, using Three.js and Jupyter Widgets.

Project description


Interactive demo on Binder Install from PyPI Install from conda-forge Reuse from npm Documentation Status Build Status

A Python / ThreeJS bridge for Jupyter Widgets.



Using pip:

pip install pythreejs

or conda:

conda install -c conda-forge pythreejs

For a development install, see the contributing guide.

The extension should then be installed automatically for your Jupyter client.

For JupyterLab <3, you may also need to ensure nodejs is installed, and rebuild the application:

# conda install -c cond-forge 'nodejs>=12'
jupyter lab build


If the extension is not automatically installed, you can manually enable it

Jupyter Notebook Classic

jupyter nbextension list
jupyter nbextension install --py --symlink --sys-prefix pythreejs
jupyter nbextension enable --py --sys-prefix pythreejs
jupyter nbextension list

You should see:

Known nbextensions:
  jupyter-js-widgets/extension  enabled
    - Validating: OK

Note for developers: the --symlink argument on Linux or MacOS allows one to modify the JavaScript code in-place. This feature is not available on Windows.


To perform a source installation:

## ensure you have nodejs install, e.g. with conda
# conda install -c conda-forge 'nodejs>=12'
jupyter labextension list
jupyter labextension install --no-build @jupyter-widgets/jupyterlab-manager
jupyter labextension install --no-build jupyter-datawidgets/extension
jupyter labextension install jupyter-threejs
jupyter labextension list

You should see:

JupyterLab v...
    jupyterlab-datawidgets v... enabled OK
    @jupyter-widgets/jupyterlab-manager v... enabled OK
    jupyter-threejs v... enabled OK

This approach is not recommended for JupyterLab 3, which enables federated modules, installed via pip, conda or other package managers, and does not require rebuilding the entire application.


Using pip:

pip uninstall pythreejs

or conda:

conda uninstall pythreejs

If you applied any manual steps above, it may be necessary to remove the

Jupyter Notebook Classic

jupyter nbextension disable --py --sys-prefix pythreejs

Jupyter Lab

jupyter labextension uninstall jupyter-threejs

Open Source

This software is licensed under the BSD-3-Clause License.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pythreejs-2.4.2.tar.gz (4.7 MB view hashes)

Uploaded Source

Built Distribution

pythreejs-2.4.2-py3-none-any.whl (3.4 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page