How avans-atls/tapescope works
TapeScope is a Dash dashboard for turning TapeStation-like CSV signal matrices into interactive visualizations. The principal workflow is: launch the dashboard, load a startup CSV or upload one in the UI, convert it to a numeric matrix, then view overlaid traces and a gel-like heatmap. Sample selection controls trace visibility; row order and gel contrast/color controls affect the heatmap. The app callbacks connect these stages. Source excerpts show the runtime calls; the README documents the user-facing capabilities.
Main entry points: app.py Dash app · data.py CSV loading · cli.py CLI launcher · plots.py Trace plot
Components 9
Dashboard entry
- CLI launcher
src/tapescope/cli.py - Dash app
src/tapescope/app.py
Signal data
- CSV loading
src/tapescope/data.py - Numeric matrix
src/tapescope/data.py - Dataset and lane state
src/tapescope/data.py
Visualization
- Trace plot
src/tapescope/plots.py - Gel heatmap
src/tapescope/plots.py
Other components
- Dashboard user
- CSV input
Connections 11
- Dashboard user → CLI launcher: launches
README.md - CLI launcher → Dash app: creates app
src/tapescope/cli.py - Dashboard user → Dash app: uploads and adjusts
README.md - CSV input → CSV loading: provides input
src/tapescope/data.py - Dash app → CSV loading: loads CSV
src/tapescope/app.py - CSV loading → Numeric matrix: normalizes values
src/tapescope/data.py - Dash app → Dataset and lane state: serializes and orders
src/tapescope/app.py - Dash app → CSV loading: loads uploads
src/tapescope/app.py - Dash app → Trace plot: builds traces
src/tapescope/app.py - Dash app → Gel heatmap: builds heatmap
src/tapescope/app.py - Dash app → Numeric matrix: restores frame
src/tapescope/app.py