Fritz Lekschas
banner
lekschas.de
Fritz Lekschas
@lekschas.de
I'm a computer scientist who develops interactive, intelligent, and insightful visualization systems for analyzing and exploring large-scale data on the web.

https://lekschas.de · https://github.com/flekschas · https://linkedin.com/in/flekschas
Ohhhhh nice shortcut ✨
February 18, 2025 at 3:33 PM
To test it yourself, head to github.com/flekschas/ju..., clone the repo, cd into notebooks, and run `juv run dimbridge.ipynb`. This requires juv (github.com/manzt/juv), a super handy new tool from @manzt.sh that makes Jupyter Notebooks reproducible! I highly recommend you check it out if you haven't
GitHub - flekschas/jupyter-scatter: Interactive 2D scatter plot widget for Jupyter Lab and Notebook. Scales to millions of points!
Interactive 2D scatter plot widget for Jupyter Lab and Notebook. Scales to millions of points! - flekschas/jupyter-scatter
github.com
February 18, 2025 at 3:01 PM
Using a single-cell surface protein dataset, you can use Jupyter Scatter to select points and have DimBridge compute the key protein expressions. You can also contrast two or more selections or use the brush selection to study a sequence of selections in the dataset.
Extricating human tumour immune alterations from tissue inflammation - Nature
Complementary single-cell approaches show that a population of regulatory T cells co-expressing ICOS and IL-1 receptor type 1 is highly enriched in tumours but not in site-matched inflamed non-maligna...
www.nature.com
February 18, 2025 at 3:01 PM
To test the new brush selection, I combined JScatter w/ DimBridge (arxiv.org/abs/2404.07386) a method to identify key dims in the high-dim space that explain a subset of points in the embedding. The idea is to tell you which handful of dims from the dataset can explain patterns in the embedding.
DimBridge: Interactive Explanation of Visual Patterns in Dimensionality Reductions with Predicate Logic
Dimensionality reduction techniques are widely used for visualizing high-dimensional data. However, support for interpreting patterns of dimension reduction results in the context of the original data...
arxiv.org
February 18, 2025 at 3:01 PM
The brush selection can be useful when working with temporal or sequential patterns. Huge kudos to Andres Colubri who brought up that idea and the initial implementation for regl-scatterplot (Jupyter Scatter's rendering engine github.com/flekschas/re...).
GitHub - flekschas/regl-scatterplot: Scalable WebGL-based scatter plot library build with Regl
Scalable WebGL-based scatter plot library build with Regl - flekschas/regl-scatterplot
github.com
February 18, 2025 at 3:01 PM
See the full changelog at github.com/flekschas/ju... and let me know what you think!

And most importantly, Guten Rutsch and Happy New Year! 🥳
December 30, 2024 at 12:15 PM
Under the hood, we've modernized the tooling by switching to Biome for JS code formatting and uv for Python package management. The min Python version is now 3.9.

Again thanks to @manzt.sh for taking on the switch to uv. And a big shoutout to the wonderful folks behind Biome and uv 🙏
December 30, 2024 at 12:15 PM
To give Jupyter Scatter a try is now easier than ever:

➡️ `uvx jupyter-scatter demo`

This fantastic feature is shamelessly copied from @manzt.sh who implemented it for cev github.com/OzetteTech/c.... Huuuge thanks Trevor 🙏
GitHub - OzetteTech/comparative-embedding-visualization: A Jupyter widget for comparing two embeddings with shared labels by their confusion, neighborhoods, and size.
A Jupyter widget for comparing two embeddings with shared labels by their confusion, neighborhoods, and size. - OzetteTech/comparative-embedding-visualization
github.com
December 30, 2024 at 12:15 PM
Another addition is the ability to change the points' zoom scale function to constant or linear. By default, points are scaled up using the inverse hyperbolic sine to reveal overlapping points as you zoom in. Finally, you can also now lock the camera view with to avoid zooming in as you scroll.
December 30, 2024 at 12:15 PM