HyperTools: A python toolbox for gaining geometric insights into high-dimensional data¶
HyperTools is a library for visualizing and manipulating high-dimensional data in Python. It is built on top of matplotlib and plotly (for static and interactive plotting), seaborn (for plot styling), and scikit-learn (for data manipulation). For sample Jupyter notebooks, click here and to read the paper, click here.
Some key features of HyperTools are:
Functions for plotting high-dimensional datasets in 2/3D, statically, animated, or fully interactive (
backend='plotly')A single canonical pipeline – manip, normalize, reduce, align, cluster – composable from every entry point (see The canonical pipeline order)
Dimensionality reduction via PCA, UMAP, t-SNE, and friends, plus optional torch-backed autoencoder reducers
Data alignment across datasets (hyperalignment, Procrustes, the shared response model) and mixture-model (“soft”) clustering
Timeseries forecasting (
hypertools.predict) and missing-data imputation (hypertools.impute)Support for Numpy arrays, Pandas DataFrames (including MultiIndex), text, and (mixed) lists, with loaders for local files, URLs, and hosted datasets
Applying topic models and other text vectorization methods to text data
Contents:
- API reference
- The canonical pipeline order
- How to use HyperTools
- Plot
- Analyze
- Normalize
- Reduce
- Align
- Cluster
- Plotting text
- Visualizing Hugging Face embeddings
- Modern scikit-learn models and dynamics
- Mapping Wikipedia with modern text embeddings
- Visualizing the shape of a conversation
- Plotting streaming data
- Streaming from a Lab Streaming Layer (LSL) device
- Forecasting stock prices with hyp.predict
- Imputing and forecasting a real projectile arc with hyp.impute and hyp.predict
- Story trajectories: brain activity while listening to a story
- Gallery of Examples