Skip to main content

Build Status Documentation Status License Badge

openTSNE is a modular Python implementation of t-Distributed Stochasitc Neighbor Embedding (t-SNE) [1], a popular dimensionality-reduction algorithm for visualizing high-dimensional data sets. openTSNE incorporates the latest improvements to the t-SNE algorithm, including the ability to add new data points to existing embeddings [2], massive speed improvements [3] [4] [5], enabling t-SNE to scale to millions of data points and various tricks to improve global alignment of the resulting visualizations [6].

Macosko 2015 mouse retina t-SNE embedding

A visualization of 44,808 single cell transcriptomes obtained from the mouse retina [7] embedded using the multiscale kernel trick to better preserve the global aligment of the clusters.

Installation

openTSNE can be installed on all supported versions of Python.

Conda

openTSNE can be easily installed from conda-forge with

conda install --channel conda-forge opentsne

Conda package

PyPi

openTSNE is also available through pip and can be installed with

pip install opentsne

PyPi package

Installing from source

If you wish to install openTSNE from source, please run

pip install .

in the root directory to install the appropriate dependencies and compile the necessary binary files.

Please note that openTSNE requires a C/C++ compiler to be available on the system.

In order for openTSNE to utilize multiple threads, the C/C++ compiler must support OpenMP. In practice, almost all compilers implement this with the exception of older version of clang on OSX systems.

To squeeze the most out of openTSNE, you may also consider installing FFTW3 prior to installation. FFTW3 implements the Fast Fourier Transform, which is heavily used in openTSNE. If FFTW3 is not available, openTSNE will use numpy’s implementation of the FFT, which is slightly slower than FFTW. The difference is only noticeable with large data sets containing millions of data points.

A hello world example

Getting started with openTSNE is very simple. First, we’ll load up some data using scikit-learn

from sklearn import datasets

iris = datasets.load_iris()
x, y = iris["data"], iris["target"]

then, we’ll import and run

from openTSNE import TSNE

embedding = TSNE().fit(x)

Citation

If you make use of openTSNE for your work we would appreciate it if you would cite the paper

@article{Policar2024,
    title={openTSNE: A Modular Python Library for t-SNE Dimensionality Reduction and Embedding},
    author={Poli{\v c}ar, Pavlin G. and Stra{\v z}ar, Martin and Zupan, Bla{\v z}},
    journal={Journal of Statistical Software},
    year={2024},
    volume={109},
    number={3},
    pages={1–30},
    doi={10.18637/jss.v109.i03},
    url={https://www.jstatsoft.org/index.php/jss/article/view/v109i03}
}

openTSNE implements two efficient algorithms for t-SNE. Please consider citing the original authors of the algorithm that you use. If you use FIt-SNE (default), then the citation is [5] below, but if you use Barnes-Hut the citations are [3] and [4].

References

Release files for openTSNE 1.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openTSNE 1.0.4
File Size Uploaded
opentsne-1.0.4.tar.gz 252.5 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for openTSNE 1.0.4
File
opentsne-1.0.4-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
opentsne-1.0.4-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
opentsne-1.0.4-cp314-cp314-macosx_10_15_universal2.whl CPython 3.14 CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64) Details
opentsne-1.0.4-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
opentsne-1.0.4-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
opentsne-1.0.4-cp313-cp313-macosx_10_13_universal2.whl CPython 3.13 CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64) Details
opentsne-1.0.4-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
opentsne-1.0.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
opentsne-1.0.4-cp312-cp312-macosx_10_13_universal2.whl CPython 3.12 CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64) Details
opentsne-1.0.4-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
opentsne-1.0.4-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
opentsne-1.0.4-cp311-cp311-macosx_10_12_universal2.whl CPython 3.11 CPython 3.11 macOS 10.12+ universal2 (ARM64, x86-64) Details
opentsne-1.0.4-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
opentsne-1.0.4-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
opentsne-1.0.4-cp310-cp310-macosx_10_12_universal2.whl CPython 3.10 CPython 3.10 macOS 10.12+ universal2 (ARM64, x86-64) Details

Total release size: 24.5 MB

Release files / opentsne-1.0.4.tar.gz

Download URL opentsne-1.0.4.tar.gz
Size 252.5 kB
Tags Source
SHA-256 checksum
How to use checksums
e90bf612be94fcbe06e3cab9531a58e4824661f38dd7c2e934569820d15c82ab
BLAKE2b-256 checksum
How to use checksums
9d164c73977c4702c6a9452248d4562ba61579a215bc09e4c50b795de65fbbca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp314-cp314-win_amd64.whl

Download URL opentsne-1.0.4-cp314-cp314-win_amd64.whl
Size 448.7 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
1676c4e16c62cdf2ce4e3c75a91dbd2572f7c814675e13d825be8559aecb3d7c
BLAKE2b-256 checksum
How to use checksums
5ba0e0633cbccf94a5a7e88bc63cb2ee39c8a618f8b1f573102420d22d8a2729
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL opentsne-1.0.4-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 3.4 MB
Tags CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1f76202a0d46c4dad19555d12af94cffc95c66f654d4d104a51ff42fc4eacd0d
BLAKE2b-256 checksum
How to use checksums
1e840a21d042f284e9687273280a7c90d2bdc58981f48f36750f3fca0add3646
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp314-cp314-macosx_10_15_universal2.whl

Download URL opentsne-1.0.4-cp314-cp314-macosx_10_15_universal2.whl
Size 976.1 kB
Tags CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
50fb43e2677490dc87355116a355fca09e86e9d4a45dd8cbcfcb01612c836295
BLAKE2b-256 checksum
How to use checksums
66cfbabb54029f28b4fb82c5245a8ecdcc5ec40eb0aac94290bfb704311f6ac4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp313-cp313-win_amd64.whl

Download URL opentsne-1.0.4-cp313-cp313-win_amd64.whl
Size 437.5 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
f681ed5957e99af9500538384bfc15b50697f99c7cd057cfe8863d50248cc228
BLAKE2b-256 checksum
How to use checksums
e654f2ebcceade78726cda5cbfa96c3f3fc322df213ecb517263bf90b7d65e9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL opentsne-1.0.4-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0d3bd0e2bc9f557ce75ab4b19038480364a60fc9ffcd2362838ff854bc2a0331
BLAKE2b-256 checksum
How to use checksums
2189cb521035739b4ff900cfb0530dcb70c1d689800f05bf966f67caf54e944b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp313-cp313-macosx_10_13_universal2.whl

Download URL opentsne-1.0.4-cp313-cp313-macosx_10_13_universal2.whl
Size 974.3 kB
Tags CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
9c594f6224f6b4cf98988651aabe68e0ffd408822559f1450ee870f8e496a233
BLAKE2b-256 checksum
How to use checksums
97c37df65a76da64cd157af1a62679ac0ff76dd36398faeb7cc56cd46634ea09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp312-cp312-win_amd64.whl

Download URL opentsne-1.0.4-cp312-cp312-win_amd64.whl
Size 438.3 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
3a28e474804bf3b56ec6f2574eacaa3ffa5efc2dd30b642aa9907b31a982dcc1
BLAKE2b-256 checksum
How to use checksums
35727806a5ef1cb922cac2a5aef75dc3aa947009880fe81ece15c02670e49db5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL opentsne-1.0.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
610626be6ff6062b96e1b122ff219fbeb34957578a0f0f420aa3cc3505ab3547
BLAKE2b-256 checksum
How to use checksums
70b80f757c94ea08ce907beaa223be700bdf2ea0378563326489aa7b2c2f7dc9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp312-cp312-macosx_10_13_universal2.whl

Download URL opentsne-1.0.4-cp312-cp312-macosx_10_13_universal2.whl
Size 982.3 kB
Tags CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
3787feeb58818569a5a8a09e12a63ba4dfc33bee89b221b530a11495c72d203c
BLAKE2b-256 checksum
How to use checksums
0ab1f64c27fea1cb6a70f9517e599dcf992223be6fbad7392daeb870db2d504b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp311-cp311-win_amd64.whl

Download URL opentsne-1.0.4-cp311-cp311-win_amd64.whl
Size 437.8 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
c6b862eacf4387f8e790d9d3bf48e2e86e8135f9fbf8ea58db6e593c48950ced
BLAKE2b-256 checksum
How to use checksums
e89e720bce1be767d0a7001dc731be2da0392fee835c8cbf6d6549de2c80aea7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL opentsne-1.0.4-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1563bbb017d1cfecc230ec1cc3adb33b3edf40f6b6444939645fe28611eb3853
BLAKE2b-256 checksum
How to use checksums
e3de4da97abd52d19e0f3d9b91b83a57b5d74ddd73b378d4ed032f41fea5ed1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp311-cp311-macosx_10_12_universal2.whl

Download URL opentsne-1.0.4-cp311-cp311-macosx_10_12_universal2.whl
Size 977.2 kB
Tags CPython 3.11 macOS 10.12+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
50819514cf229b50f9cd3dcd7680ad48aca70deecad40baa05db132af42254f5
BLAKE2b-256 checksum
How to use checksums
da39dbab9b2ef432a9087d63b18efd8e2c12ec6ef8483e9ce46b9281ab58b9b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp310-cp310-win_amd64.whl

Download URL opentsne-1.0.4-cp310-cp310-win_amd64.whl
Size 438.8 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
f2c4670461372880ecddbe839245faab30f2472d3d42ca0c52c6e302d4b459fa
BLAKE2b-256 checksum
How to use checksums
7c31216d09652027d04c4d73723d8d7aea0e4f0b7548a534d380bb3790dfec81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL opentsne-1.0.4-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 3.3 MB
Tags CPython 3.10 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5cb81cbcb40fb5f813e86c772197fee8a8a85e756ebe5b9f158614224d5cd616
BLAKE2b-256 checksum
How to use checksums
76bbc09e0ec0ddded578fc21174c66a14235c2333cd6e8cc31d6701dd23c0fa3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / opentsne-1.0.4-cp310-cp310-macosx_10_12_universal2.whl

Download URL opentsne-1.0.4-cp310-cp310-macosx_10_12_universal2.whl
Size 977.7 kB
Tags CPython 3.10 macOS 10.12+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
b7923a4646dc2857668b600775cc8a44f6a9bf14f666e67c4d973d19cad1ff47
BLAKE2b-256 checksum
How to use checksums
edc02ed995afc5917c58bfeefdd65ea58c7d6fc90b0fe73b08ee5a3b8afa89a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release history Release notifications | RSS feed

This release

1.0.4 This release

16 release files

1.0.3

16 release files

1.0.2

13 release files

1.0.1

19 release files

1.0.0

16 release files

0.7.1

13 release files

0.7.0

13 release files

0.6.2

13 release files

0.6.1

13 release files

0.6.0

13 release files

0.5.2

13 release files

0.5.0

13 release files

0.4.1

7 release files

0.4.0

7 release files

0.3.12

7 release files

0.3.10

7 release files

0.3.9

7 release files

0.3.8

1 release file

0.3.7

1 release file

0.3.5

1 release file

0.3.2

1 release file

0.3.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page