HOW-TO Use Query Driven Visualization in Astro-WISE

Query Driven Visualization is an extension of the request driven Target Processing to Visualization. Instead of pushing data into the visualization it is pulled from within the visualization.

Query Driven Visualization for SourceCollections in Astro-WISE can be done over SAMP.

A design goal of the SourceCollection classes was to be able to use them interactively over SAMP. New SAMP messages are designed to to allow query driven visualization in a more declarative way than is possible with other information systems. Support for these SAMP messages can easily be implemented in a visualization tool, here we use simple standalone programs to perform query driven visualization of catalogs. The exploration of the catalogs is deferred to other applications, such as TOPCAT, by sending the catalogs through SAMP.

Bootstrapping SAMP

A SAMP HUB and the awe-prompt SAMP client should be started to perform Query Driven Visualization. TOPCAT can be used as a SAMP HUB, which has the added benefit that TOPCAT is a useful tool to explore the catalogs itself. TOPCAT can be started through java webstart:

javaws http://andromeda.star.bris.ac.uk/~mbt/topcat/topcat-full.jnlp &

The awe-prompt adds command line interaction to the query driven visualization. Run the following on the awe-prompt:

# Import the SAMP module.
from astro.services.samp.Samp import Samp

# Start a SAMP client.
s = Samp()

Example Clients

Example clients to pull data over SAMP can be found in the qdvsamp project.

git clone https://gitlab.astro-wise.org/buddel/qdvsamp.git

The cd commands below assume your current working directory is the directory where this git clone has been ran.

Simple Puller

The Simple Puller (Figure 1) is a SAMP application with a web based frontend for pulling catalog data. This application shows the most basic way to pull catalog data over SAMP, which can easily be added to other SAMP applications. It can be found here:

cd qdvsamp/simplepuller/
python simplepuller.py

Browse to http://localhost:8080 to use it.

Provide the following pieces of information:

  • Starting Catalog: 100511
  • Selection Criterion: “R” < 300
  • Attributes: absMag_u, absMag_g, iC

And press the ‘Pull’ button.

SAMP application for pulling catalog data.

Figure 1: SAMP application for pulling catalog data.

Tree Explorer

The Tree Explorer is a simple program that allows exploration of the dependency tree held by the Astro-WISE SAMP client (Figure 2). Highlighting a node by clicking on it sets the highlighted_sourcecollection property of the Astro-WISE client. This application shows how a SAMP application can use the data lineage to give the user more information about the derivation of a particular dataset. The Tree Explorer can be found in the Astro-WISE code base:

cd qdvsamp/treeexplorer
python treeexplorer.py
SAMP application for exploring trees.

Figure 2: SAMP application for exploring trees. Every node shows the SCID on the top left, the operator in the top center and an identifier for the set of sources on the top right. The attributes are shown in the rest of the box. SAMP application for exploring trees.

Object Viewer

The Object Viewer (Figure 1) is a SAMP application with a web based frontend for viewing and modifying details of individual Process Targets. Currently only SourceCollections are supported. This application shows how an application can use SAMP to influence processing details, without requiring it to know details of Astro-WISE.

cd qdvsamp/objectviewer
python objectviewer.py

Browse to http://localhost:8084/objectviewer.html to use it.

SAMP application to view and modify details of Process Targets.

Figure 3: SAMP application to view and modify details of individual Process Targets. The highlighted SourceCollection from Figure 2 is shown. This figure shows a prototype of the application.