Say 👋 to dtour: a visualization tool for smoothly navigating through high-dimensional data
High-dimensional data is hard to understand. But is it truly cursed?
To help you develop better intuition for high-dimensional datasets, Nezar Abdennur and I built dtour, a visualization tool for smoothly navigating through data projections.
→ https://github.com/flekschas/dtour
Some dimensionality reduction methods find interesting angles but hide everything orthogonal to them. Other methods compress the whole manifold into 2D, which can muddle genuine structure with layout artifacts.
Traversing multiple projections can help build a more holistic understanding of high-dim manifolds, and dtour makes such exploration effortless through one interface: you can switch fluidly between an overview gallery of projection “keyframes”, a guided cyclical tour along geodesic paths connecting keyframes, fine manual axis manipulation for user-driven excursions, and a wandering grand tour for serendipitous discovery.
dtour is built around two types of workflows:
- revealing structure in a single high-dimensional space through hyperdimensional tours, and
- validating or comparing embeddings through sequential tours over a series of 2D projections.
For examples:
Dmitri Kobak and colleagues have shown that non-linear neighbor-embedding methods all lie on a spectrum that weighs attractive forces between neighbors against repulsive forces between all points. Smoothly scrubbing along that spectrum on Fashion MNIST makes it tangible which clusters in a UMAP-like layout are genuine signal and which only emerge under strong repulsion. You can also tour through the structure of a single high-dimensional dataset along its own spectral basis. For instance, on a 346K-cell single-cell surface-protein dataset from Florian Mair, a Laplacian Eigenmaps tour recovers known immunological hierarchy and gradually reveals cell phenotypes.
On the validation side, we used dtour to inspect a 2D UMAP using a 8D PCA tour of a 276K-cell developing mouse brain from La Manno et al. showing which clusters are visible in the linear basis and which are exaggerated by the non-linear embedding. You can also use dtour to compare different embedding methods. For instance, a sequential tour through four embeddings of 3 million arXiv title+abstracts under SPECTER2, BGE-M3, Nomic Embed v2, and F2LLM-v2 8B surfaces where modern sentence embedding models agree on similarity and where they don’t.
Explore these yourself: https://dtour.dev
dtour is optimized for performance: it runs smoothly for up to ~10M points and remains usable up to ~20M. To get there, we use WebGPU/GL, Web Workers, and OffscreenCanvas.
dtour runs in any modern browser, ships as a Jupyter/Marimo widget for notebook workflows, and embeds in React apps.
Preprint on arXiv: https://arxiv.org/abs/2605.04306.
And if dtour proves useful in any projection of your reality, please subscribe to a wonderful rest of your day.