Skip to content
DraconiticResearch
Search Sources API
203,203 studies31 sourcesUpdated 13 min ago
PreprintCC BY 4.0arXiv

scPyviewer: a Python-native interactive viewer from AnnData single-cell data

Abstract

Motivation: Interactive web tools enabling non-programmers to explore single-cell datasets, embeddings, gene expression, metadata, and marker genes are standard laboratory infrastructure. However, actively maintained tools (e.g., ShinyCell, ScRDAVis, sCIRCLE) rely on R Shiny and require Seurat objects. Python/scanpy, the dominant framework for single-cell RNA-seq and spatial analysis, lacks a lightweight, native option pairing a shareable viewer with a scriptable Python API. Sharing scanpy results currently requires converting to Seurat or sharing code notebooks. Results: We present scPyviewer, a web viewer that ingests AnnData objects directly and reproduces incumbent interaction patterns within the Python stack. In a feature-parity audit against three R Shiny tools, scPyviewer matches or exceeds baseline capabilities (7/7), uniquely offering native AnnData ingestion without conversion and cross-dataset comparison over shared genes and matched cell types. Benchmark tests across three datasets (22,315 to ~313,000 cells) show scPyviewer renders every core view faster (up to 3.6x speedup) using lower memory (5.2x lower on the smallest dataset). On 313,000 cells, scPyviewer completes all views while Seurat exhausts an 8 GB memory limit and fails. Beyond the app, scPyviewer exposes a Python API returning Matplotlib figures and pandas tables for publication-ready output. Availability and implementation: Implemented in Python 3.11 (scanpy 1.11.5, anndata 0.12.19, streamlit 1.59.2, plotly 6.9.0) with a one-command interface to reproduce benchmarks, figures, and launch the app. Source code: https://github.com/xuan13hao/scPyviewer.git

Related

  1. napari-TurboBox: Interactive Multi-Viewer Bounding Box Annotation for AI-Guided Volumetric Bioimaging
    Nils Friederich, Philip Kohle, Maximilian Beichter +11
    arXivPreprintCC BY 4.0Full textBioinformatics & computational biologyarXiv
  2. SynFlow: an interactive online genome structural variant viewer
    Marilyne Summo, Gaëtan Droc, Mathieu Rouard +1
    BioinformaticsPeer-reviewedCC BY 4.0Full textProteomics & metabolomicsEcologyHAL
  3. An Open-Source Web-Based Viewer for Disseminating Image-Derived Models
    Christian Herz, Kyle Sunderland, Matthew Daemer +11
    arXivPreprintCC BY 4.0Full textBioinformatics & computational biologyarXiv
  4. digimouth: a Python package for modeling aroma release in food science
    C. Peltier, O. Mourabit, K. Coulibaly +2
    bioRxivPreprintAll rights reservedFull textSystems & synthetic biologybioRxiv
  5. Severe Tick Infestation and Haemogregarina spp. Infection in a Captive African Rock Python ( Python sebae ): A Clinical and Parasitological Case from Nigeria
    Foluke Adedayo Akande, Adrian A. Diaz Sanchez, Adeniyi Olugbenga Egbetade +6
    Veterinary Medicine and SciencePeer-reviewedCC BY 4.0Full textMicrobiologyHAL
BibTeX
@misc{xuan2026scpyviewer,
  title = {{scPyviewer: a Python-native interactive viewer from AnnData single-cell data}},
  author = {Hao Xuan and Yu Huang and Jiang Bian and Xiangtao Liu},
  howpublished = {arXiv},
  year = {2026},
  month = oct,
  doi = {10.48550/arxiv.2610.35890},
  eprint = {2610.35890},
  archivePrefix = {arXiv},
  url = {https://arxiv.org/abs/2610.35890},
  note = {CC BY 4.0},
}
RIS
TY  - UNPB
TI  - scPyviewer: a Python-native interactive viewer from AnnData single-cell data
AU  - Hao Xuan
AU  - Yu Huang
AU  - Jiang Bian
AU  - Xiangtao Liu
PY  - 2026
DA  - 2026/10/01
PB  - arXiv
DO  - 10.48550/arxiv.2610.35890
UR  - https://arxiv.org/abs/2610.35890
AB  - Motivation: Interactive web tools enabling non-programmers to explore single-cell datasets, embeddings, gene expression, metadata, and marker genes are standard laboratory infrastructure. However, actively maintained tools (e.g., ShinyCell, ScRDAVis, sCIRCLE) rely on R Shiny and require Seurat objects. Python/scanpy, the dominant framework for single-cell RNA-seq and spatial analysis, lacks a lightweight, native option pairing a shareable viewer with a scriptable Python API. Sharing scanpy results currently requires converting to Seurat or sharing code notebooks. Results: We present scPyviewer, a web viewer that ingests AnnData objects directly and reproduces incumbent interaction patterns within the Python stack. In a feature-parity audit against three R Shiny tools, scPyviewer matches or exceeds baseline capabilities (7/7), uniquely offering native AnnData ingestion without conversion and cross-dataset comparison over shared genes and matched cell types. Benchmark tests across three datasets (22,315 to ~313,000 cells) show scPyviewer renders every core view faster (up to 3.6x speedup) using lower memory (5.2x lower on the smallest dataset). On 313,000 cells, scPyviewer completes all views while Seurat exhausts an 8 GB memory limit and fails. Beyond the app, scPyviewer exposes a Python API returning Matplotlib figures and pandas tables for publication-ready output. Availability and implementation: Implemented in Python 3.11 (scanpy 1.11.5, anndata 0.12.19, streamlit 1.59.2, plotly 6.9.0) with a one-command interface to reproduce benchmarks, figures, and launch the app. Source code: https://github.com/xuan13hao/scPyviewer.git
ER  -