Science within the HiPS ecosystem is a Tutorial presented in Görlitz (Germany), during ADASS XXXV, on Sunday, November 9 2025, 15:30-17:00. Room: Theater, Benigna.
Instructor: Sébastien Derriere (CDS). Tutors: Thomas Boch, Pierre Fernique, Matthieu Baumann (CDS)
Introduction
The main goal of this tutorial is to teach participants how to use hierarchical Virtual Observatory (VO) standards allowing construction, exploration and querying of all-sky datasets. The Hierarchical Progressive Survey (HiPS) and the Space-Time Multi-Order Coverage map (ST-MOC) standards can be used by data providers to expose their datasets (images or catalogues), and astronomers can use them to perform complex queries and operations on all-sky datasets.
Primary learning objectives
- How to create HiPS and MOC datasets from local images and catalogues.
- How to generate cutouts from public and private HiPS datasets.
- How to manipulate ST-MOCs to find spatio-temporal coincidence of data, or query reference services.
- Discover the new capabilities in Aladin Lite v3 and ipyaladin.
Requirements for participants
-
Personal laptop with at least 500MB of available disk space for data storage. and processing, Wifi or network access.
-
Software - you can run the tutorial with Windows, Linux or MAC, provided you have installed:
- Web browser with JavaScript enabled.
- Java Virtual Machine >=1.8, and ability to run command-line programs.
- Aladin Desktop
- HipsGen-Cat
- If you wish to run the Jupyter notebooks locally, you need a proper Python environment with the following libraries (
requirements.txt) :- astropy :
pip install astropy[recommended] --upgrade - astroquery :
python -m pip install -U --pre astroquery - MOCpy :
pip install mocpy - ipyaladin :
pip install ipyaladin - cdshealpix :
pip install cdshealpix - pyvo :
pip install pyvo
- astropy :
Note that we also provide an online alternative using Jupyter lite to run the notebooks in your browser with no install needed (kudos to Manon Marchand for privinding this solution).
Please download the
HiPS_Tutorial_data.zip(160MB) data samples before attending the tutorial !
The extracted HiPS_Tutorial_data directory will contain :
- A VOTable file for a comet ephemeris :
47P.xml - An
imagesdirectory, containing 6 FITS images from Boselli et al. 2022 - A sample of Gaia DR3 catalogue in base64 VOTable
GaiaDR3_votable.b64.
Test images and catalogues will also be available on USB sticks during the tutorial if needed.
Tutorial Plan
- 1. Introduction (PDF) (15')
- 2. First manipulation of HiPS and MOC (20')
- 3. Comet hunting (15')
- 4. Creating your own image HiPS and MOC (20')
- 5. HiPS catalogues (10')
- 6. HiPS3D demonstration (10')
- 7. Extraction of cutouts from HiPS surveys with hips2fits (20')
- 8. Wrap-up and conclusion
1. Introduction to the session, standards and tools
Introduction to the Hierarchical Progressive Survey (HiPS) and the Space-Time Multi-Order Coverage map (ST-MOC) standards, what they are and what they enable for doing science.
Quick introduction to Aladin Desktop, Aladin Lite v3 and ipyaladin.
2. First manipulation of HiPS and MOC
2.1 With Aladin Desktop
Launch Aladin Desktop, by running the appropriate launcher, or executing:
java -Xmx2048m -Xms1024m -jar Aladin.jar
- Search the data collection tree for the SDSS9 color image survey (g,r,i CDS color composition):
CDS/P/SDSS9/color-alt.Collections > Image > Optical > SDSS > SDSS9 color (g,r,i CDS color composition).- Load the "progressive" survey and the associated STMOC cov.
- Search GALEX GR6/7 color composition:
CDS/P/GALEXGR6_7/color.Collections > Image > UV > GALEX > GALEX GR6/7 - Color composition.- Load the "progressive" survey and the associated STMOC cov.
- Zoom, pan, compare the 2 surveys (use dual
multiviewandmatchto sync the views). You can click on the icons of planes in the Aladin stack to show or hide them.

HiPS enable a full-sky overview, but one can zoom to see the full-resolution images locally, without downloading the full dataset.
- Compare the 2 spatial MOCs describing the complex survey coverage.
- Compute a new MOC corresponding to the spatial intersection of the 2 surveys (
Coverage > Logical operations).
Make sure you compute only the spatial MOC : uncheck the
Timecheckbox

One can use a MOC as a constraint, to find catalogue sources whose positions are located inside the MOC.
- Search
VII/192in the data collection to load thearplisttable of the Arp’s peculiar galaxies (Webb 1996). You can use theselectbox at the bottom of the data collections tree to do the search.

Collections > Catalog > VizieR > VII-Non-stellar Objects > Arp's Peculiar galaxies- Load the whole data. There are 592 sources.
- Find how many sources from this table are inside the intersection MOC (
Coverage > Filter a table by MOC).

2.2 With a Python Notebook
The manipulation of the 2 MOCs and the filtering of the Arp’s peculiar galaxies can be done from a Python notebook, and visualized with ipyaladin.
Use this link to launch the notebook
MOC_filtering.ipynbin Jupyter lite (in your browser, no installation needed).
If you know how to run Jupyter notebooks locally, you can download and run the following notebook: MOC_filtering.ipynb, a simplified version of this CDS tutorial.
3. Comet hunting in the DSS survey
This exercise shows the manipulation of space-time MOCs to find spatio-temporal coincidence of datasets. This is a new capability offered by the latest MOC standard.
- Clear your Aladin Desktop stack (
Shift+delto delete all planes). - Search the DSS2 blue survey : load the "progressive" HiPS survey, and the progenitors (Links to orig. img.).

- We will convert the list of images used to build the DSS2 blue survey into a ST-MOC :
Coverage > Generate a space-time MOC based on the selected catalog- Associate a 3600s duration for each image (approximate exposure time for photographic plates), and a time resolution of 4m28s (order 33)
- Use the FoV of the photographic plate associated to each source for the spatial coverage
- Create the ST-MOC

-
We will load the ephemeris of the comet 47P/Ashbrook-Jackson (download
47P.xmlVOTable file here) obtained from the Paris IMCCE Orbital Ephemerides service (Ctrl+L, load the VOTable as a local file). The file contains 2000 positions for the comet, starting 1992-01-01T00:00:00, with 12 hours between two points. -
Convert this VOTable into a STMOC :
Coverage > Generate a space-time MOC based on the selected catalog- Associate a 43200s duration to each point (12 hours), still at order 33
- Choose a fixed radius of 3600 arcsec around each point to ensure sufficient spatial overlap
- Create the ST-MOC
-
Compute the intersection in space and time between the 2 STMOCs :
Coverage > Logical operations. -
Zoom-in on the resulting ST-MOC : you have found the 47P comet captured in the DSS2 blue plates !

4. Creating your own image HiPS and MOC
In this section, we will present how to convert individual FITS images into an image HiPS survey, with the associated MOC.
4.1 HiPS and MOC creation
We take a sample of 6 Halpha images from the online data from Boselli et al. 2022 (catalogue J/A+A/659/A46 in VizieR), with different sizes, and convert them into a HiPS image survey.
The 6 FITS files are in the
HiPS_Tutorial_data/imagesdirectory extracted from theHiPS_Tutorial_data.zip(160MB) data samples.
Method 1:
This can be done from the command line, with the input images in a directory named HiPS_Tutorial_data/images and the output HiPS created in a directory named hips:
java -jar Aladin.jar -hipsgen in=HiPS_Tutorial_data/images out=hips id=adassTutorial
Method 2:
This can also be processed interactively from Aladin Desktop :
Tool > Generate a HiPS based on > An image collection
4.2 Visualisation and manipulation
Once the HiPS is processed, one can simply open the hips directory to visualize it in Aladin Desktop (use Ctrl+L to load a local directory).
Generating a PNG or JPG version of the tiles provides a lighter version of the survey which can be displayed by Aladin Lite.
Aladin generates an hips/index.html landing HTML page for your custom HiPS, which you can try to open by starting a simple http server on your local machine with Python 3, running the following command in the directory where your HiPS is stored:
python -m http.server
This will return the corresponding URL, for example:
> Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)...
You can compare your custom HiPS with reference HiPS surveys such as GALEX.
In the directory, you will also find a MOC describing the spatial coverage of your dataset (Moc.fits file under the root of the HiPS directory).
4.3 Filtering a catalogue by MOC
4.3.1 With Aladin Desktop
Try to use this MOC to directly query the NGC 2000.0 catalogue from the VizieR collection (VII/118/ngc2000) for sources which are located inside the MOC using Aladin Desktop :
- Load the
Moc.fitsfile (or display the properties of your HiPS, and click on theCoveragebutton): a plane for the MOC appears. - Select the MOC plane in the Aladin Desktop stack.
- Search for
NGCin the Collections tree. - Locate the NGC 2000.0 catalogue (
Collections > Catalog > VizieR > VII-Non-stellar Objects > NGC 2000.0) and chooseby region and MOC
This NGC sample only contains 5 galaxies :
NGC 4429
NGC 4459
NGC 4469
NGC 4476
NGC 4526
4.3.2 In Python (optional : try it if you have time)
The catalogue query by MOC can also be performed from a Python notebook (adapted from Step 5 of this notebook).
Use this link to launch the notebook in Jupyter lite
MOC_filtering2.ipynb(in your browser, no installation needed).
If you know how to run Jupyter notebooks locally, you can download and run the following notebook: MOC_filtering2.ipynb (adapted from Step 5 of this notebook).
5. HiPS catalogues
Images are not the only data products that can be accessed by hierarchical progressive surveys : it also works for large catalogues.
Manipulate a progressive catalogue
- Search the "Gaia DR3 source catalogue" in the Aladin Desktop data Collections tree :
Collections > Catalog > VizieR > I-Astrometric data > Gaia DR3 Part 1. Main source > Gaia DR3 source catalog (1811709771 sources). - Load the "progressive" access mode.
- Explore the region around M45 (you can enter
M45in the Command panel at the top). - See the green/orange progress bar of the catalogue
and try to select sources visible in the field of view and sort by magnitude as you (un)zoom. Magnitude is the selected criterion for progressively displaying Gaia DR3 sources.
Create your own progressive catalogue
One can create a progressive catalogue using a different sorting, with the Hipsgen-cat tool. Detailed instructions on options are available here.
Take the Gaia DR3 source sample (GaiaDR3_votable.b64) provided in the tutorial material and generate from the command line a progressive version sorted by parallax, to be created in an output directory named GaiaDR3_hips :
java -jar Hipsgen-cat.jar -cat GaiaSample -in HiPS_Tutorial_data/GaiaDR3_votable.b64 -f VOT -ra RA_ICRS -dec DE_ICRS -n1 100 -n2 200 -nM 200 -lM 10 -score Plx -desc -out ./GaiaDR3_hips
Load your HiPS catalogue in Aladin Desktop (Ctrl+L and browse to the directory GaiaDR3_hips) and compare it to the progressive default Gaia DR3.
6. HiPS3D demonstration
The HiPS standard has been extended to enable easy manipulation of large data cubes. Aladin Desktop and Aladin Lite now support the visualization of HiPS3D datasets.
You can try it on the following datasets :
6.1 The Local Group L-Band Survey
The Local Group L-Band Survey is a Karl G. Jansky Very Large Array "extra large" survey of 21-cm , continuum, and OH emission from the Local Group of Galaxies.
Open in a new browser tab this page, displaying the LGLBS data around M31.

We can try to estimate the radial velocity of M31 from the data :
- Switch the scale to velocity (
v) instead of frequency. - Drag the histogram at the bottom left or right : the vertical purple line indicates which velocity layer of the cube is displayed in the image.
- Try to estimate the median velocity value of the rotation pattern. How does this compare to v=-300km/s given by McConnachie (2012) ?
6.2 MUSE (optional : try it if you have time)
Open in a new browser tab this page, displaying test MUSE data.
- Zoom out and use the SIMBAD pointer
to identify the galaxy in the field : NGC 5806 - Click the galaxy name in the tooltip to lookup its redshift in SIMBAD: z=0.0045535
- Compute the corresponding Doppler shift for the Halpha line : \Delta\lambda = z.\lambda
- Switch the scale to wavelength (\lambda) instead of frequency.
- Identify the main lines visible in the HiPS3D, using this list of reference lines : Halpha, NII (x2) and SII (x2).
7. Extraction of cutouts from HiPS surveys with hips2fits
7.1 Simple FITS extraction
The hips2fits service enables generation of FITS images cutouts of arbitrary size and resolution from a given HiPS. You can use it by filling a form on this web page, or using the API.
- Try to generate a 1° field of view FITS image of the Galactic center as seen by Meerkat at 1284MHz.

Aladin Lite v3 supports FITS images : load this FITS image into an instance of Aladin Lite and compare it to the other survey by changing the opacity. For example:
- Drag and drop your FITS cutout in the Aladin Lite panel below, displaying the VISTA VVV survey.
You can also use the overlays menu
to load a local FITS file :
- Open the overlays menu

- Click + Surveys > FITS image file
- Load local FITS cutout file

You can also change the colormap, pixel cuts and dynamics of your FITS image.
The hips2fits service can also be accessed in python with astroquery.hips2fits
7.2 List of thumbnails
From Aladin Desktop (optional : try it if you have time)
Aladin Desktop has an embedded tool to generate thumbnail views : Tool > Thumbnail view generator.
It can create multi-views from a selection of targets for the current survey.
Use this tool to generate views for the NGC sample created in step 4.3.1, using the GALEX survey as a base image.
![]()
With hips2fits
You can use this online tool to generate a page with thumbnails, generated from the hips2fits service, for a list of targets (positions or object names) and a list of HiPS surveys.
Try to use this tool to generate a page with 0.1deg thumbnails for GALEX and SDSS images for our NGC sample (upload the list of names in ngc2000_sample.txt).
NGC 4429
NGC 4459
NGC 4469
NGC 4476
NGC 4526
![]()
You could also use Python to script the extraction of thumbnails for a list of targets with astroquery.hips2fits.
8. Wrap-up and conclusion
Summary of what we’ve learned, perspectives of HiPS and MOC for 3D datasets.
Thanks !

