VisIVO¶
Tools for exploring and analysing astronomy data — interactive desktop viewing plus a command-line processing toolkit.
VisIVO is a family of two complementary components developed at INAF, sharing the same data formats (FITS, plus VisIVO’s own Volume Binary Table — VBT) so workflows mix freely between them:
VisIVO Visual Analytics — desktop GUI for spectral cubes, 2-D maps, 3-D catalogues, HiPS surveys, source overlays. Backed by a scientific compute service that runs either embedded with the app or on a remote HPC cluster. Interactive slice navigation, moment maps, position–velocity diagrams, line-width / equivalent-width maps, baseline subtraction, spectral stacking, region statistics, MAD-based noise, optional VR.
VisIVO Server — command-line toolkit for building, filtering, viewing, and managing large particle catalogues / volume data as VBTs. Used to prepare datasets that the desktop client then opens (numerical simulations, exoplanet samples, randomly-downsampled mock fields, etc.).
The desktop tool — start here for FITS cubes and images.
The CLI toolkit — build / filter / view VBTs from the shell.
Visual Analytics — quick tour¶
The desktop tool is organised around six main areas. Each card below opens the page that documents both the UI workflow and the scientific interpretation of the products it produces.
The 3-D + 2-D workspace: slice navigation, cutting plane, probe spectra, camera ROI, animations.
Orders 0–10 explained, channel range, RMS mask, scientific interpretation.
Line-width (FWHM + EW) maps, baseline subtraction, spectral stacking across multiple cubes.
Box / circle / polygon / annulus statistics, position–velocity extraction, MAD-based noise.
3-D catalogue scatter, multi-layer 2-D images, all-sky HiPS surveys, SAMP messaging with TOPCAT/Aladin.
Backend not reachable, sanity warnings, slow swaps, common pitfalls.
VisIVO Server — quick tour¶
Convert HDF5 / ASCII / FITS / binary inputs into VBT — the format both the Server tools and the desktop viewer consume natively.
Operations on VBTs: extraction, decimation, randomisation, merging, sub-volume selection, scalar generation.
Render VBTs from the shell into images / movies (headless), useful for HPC post-processing pipelines.
Helpers for inspecting VBTs, converting between encodings, batch operations.
What you can do with it¶
Tools are grouped consistently between the Tools menu and the Tools sidebar tab in the cube viewer — same four groups (EXPLORATION, ANALYSIS, REGIONS, CATALOGUE) in the same order. The table below lists every tool together with the page that documents its scientific use.
Task |
Where in the UI |
Output |
Documented in |
|---|---|---|---|
General |
|||
Open a remote FITS cube / image |
Data Hub → Open Remote Dataset (or ⌘O) |
Cube viewer or Image viewer |
|
Navigate the spectral axis |
Slice slider, ▶ Play animation |
Slice tile + textured 3-D cutting plane |
|
EXPLORATION tools (cube viewer → Tools menu / sidebar) |
|||
Extract a spectrum at a pixel |
Tools → Extract Spectrum (Probe), or Pick Spectrum on Plane Click (3-D) |
Spectral profile window |
|
Open the cube in a VR headset (Windows / Linux, opt-in build) |
Tools → Open in VR |
OpenXR stereo render — LUT / threshold / opacity TF synced live |
|
ANALYSIS tools |
|||
Estimate the cube noise (per-channel MAD) |
Tools → Estimate Noise + pick a line-free region |
Per-channel σ vector + scalar median σ |
|
Compute a moment map (M0–M10) |
Tools → Compute Moment |
2-D map (M0 / M1 / M2 / …) |
|
Per-pixel line-width map |
Tools → Line-Width Map… |
FWHM + EW maps |
|
Subtract a polynomial baseline |
Tools → Baseline Subtraction… |
New cube dataset (registered in the session) |
|
Stack multiple cubes |
Tools → Stack Spectral Cubes… |
1-D stacked spectrum |
|
Position-velocity diagram |
Tools → Extract PV Diagram + polyline on the slice |
2-D PV map |
|
REGIONS tools (draw on the 2-D slice / moment) |
|||
Box / Circle / Polygon / Annulus statistics |
Tools → Box / Circle / Polygon / Annulus Region Analysis |
Per-region mean / median / σ / sum + spectral profile |
|
CATALOGUE overlay (menu-only state toggles) |
|||
Load a source catalogue overlay |
Tools → Load Catalogue Overlay (CSV / VOTable) |
Sources rendered + table dock |
|
Show / hide the overlay glyphs and labels |
Tools → Show Catalogue Overlay / Show Catalogue Labels |
Glyph or label visibility toggled (state preserved) |
|
Drop the overlay |
Tools → Clear Catalogue Overlay |
Glyphs + table dock removed |
|
Interop |
|||
SAMP send / receive with TOPCAT / Aladin |
Built-in SAMP hub bridge (auto-discovers running hub) |
File / catalogue exchange |
|
Open VBT / volume binary tables produced by the VisIVO Server CLI |
File → Open (or Data Hub) — any |
Particle viewer ( |
Quick install¶
For full instructions see Getting started.
# 1. backend (FastAPI)
cd backend
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --host 127.0.0.1 --port 8000
# A bearer token is printed at startup (and saved to ~/.visivo_token)
# 2. desktop client (Qt 6.5+ / VTK 9.5+ / C++17)
cmake -B build -S .
cmake --build build
./build/VisIVOVisualAnalytics.app/Contents/MacOS/VisIVOVisualAnalytics
Status¶
Active branch |
|
Backend |
FastAPI + Python 3.12+ |
Client |
Qt 6.5+ / VTK 9.5+ / C++17 |
License |
See repository |
Repo |