NASA - Jet Propulsion Laboratory
    + View the NASA Portal
Search JPL
Jet Propulsion Laboratory Home Earth Solar System Stars & Galaxies Technology
Introduction Background Software Links


mollview


This IDL facility provides a means to visualise a full sky Mollweide projection of HEALPix and COBE Quad-Cube maps in an IDL environment. It also offers the possibility to generate GIF, PNG and Postscript color-coded images of the projected map. The projected (but not color-coded) data can also be output in FITS files and IDL arrays.


Location in HEALPix directory tree: src/idl/visu/mollview.pro


FORMAT

IDL> MOLLVIEW, File, [ Select, ] [ /ASINH, CHARSIZE=, CHARTHICK=, COLT=, COORD=, /CROP, EXECUTE=, FACTOR=, FITS=, /FLIP, GAL_CUT=, GIF=, GLSIZE=, GRATICULE=, /HALF_SKY, HBOUND=, /HELP, /HIST_EQUAL, HXSIZE=, IGLSIZE=, IGRATICULE=, /LOG, MAP_OUT=, MAX=, MIN=, /NESTED, /NO_DIPOLE, /NO_MONOPOLE, /NOBAR, /NOLABELS, /NOPOSITION, OFFSET=, OUTLINE=, PNG=, POLARIZATION=, /PREVIEW, PS=, PXSIZE=, PYSIZE=, RESO_ARCMIN=, RETAIN=, ROT=, /SAVE, /SHADED, /SILENT, SUBTITLE=, TITLEPLOT=, TRANSPARENT=, TRUECOLORS=, UNITS=, WINDOW=, XPOS=, YPOS=]

Several visualization routines have a similar interface. Their qualifiers and keywords are all listed here, and the routines to which they apply are coded in the 'routine' column as:
C: cartview, G: gnomview, M: mollview, O: orthview and all: all of them

Qualifiers should appear in the order indicated. They can take a range of values, and some of them are optional.
Keywords are optional, and can appear in any order. They take the form keyword=value and can be abbreviated to a non ambiguous form (ie, factor=10.0 can be replaced by fac = 10.0). They generally can take a range of values, but some of them (noted as /keyword below) are boolean switches: they are either present (or set to 1) or absent (or set to 0).

QUALIFIERS


name routines description
File all Required
name of a (possibly gzip compressed) FITS file containing the HEALPix map in an extension or in the image field,
or name of an online variable (either array or structure) containing the (RING or NESTED ordered) HEALPix map (See note below);
if Save is set : name of an IDL saveset file containing the HEALPix map stored under the variable
data
(default : none)
Note on online data: in order to preserve the integrity of the input data, the content of the array or structure
File is replicated before being possibly altered by the map making process. Therefore plotting online data will require more memory than reading the data from disc directly, and is not recommended to visualize data sets of size comparable to that of the computer memory.
Note on high resolution cut sky data: cut sky data (in which less than 50% of the sky is observed), can be processed with a minimal memory foot-print, by not allocating fake full map. In the current release, two restrictions apply: the input data set must be read from a FITS file in 'cut4' format, and the
POLARIZATION IDL keyword (described below) must be 0 (default value). See the Examples #4 below (on page [*]).
see also:
TrueColors.
Select all Optional
column of the BIN FITS table to be plotted, can be either
- a name : value given in TTYPEi of the FITS file
NOT case sensitive and can be truncated,
(only letters, digits and underscore are valid)
- an integer : number i of the column containing the data, starting with 1 (also valid if
File is an online array)
default:1 for full sky maps, 'SIGNAL' column for FITS files containing cut sky maps (see the Examples below)
Back to Format

KEYWORDS


name routines description
/ASINH all if set, the color table is altered to emulate the effect of replacing the data by $\sinh^{-1}$(data) in order to enhance the low contrast regions. Can be used in conjonction with Factor and Offset, but can not be used with /LOG nor /HIST_EQUAL. see also:Factor, Hist_Equal, Log, Offset
CHARSIZE= all overall multiplicative factor applied to the size of all characters appearing on the plot default:1.0
CHARTHICK= all character thickness (in TITLE, SUBTITLE and color bar labeling). Other characters thickness (such as graticule labels), can be controlled with !P.CHARTHICK. default:1
COLT= all color table number, in [-40,40]. If colt<0, the IDL color table abs(colt) is used, but the scale is reversed (ie a red to blue scale becomes a blue to red scale). Note: -0.1 can be used as negative 0.
default:33 (Blue-Red)
see also:
TrueColors
COORD= all vector with 1 or 2 elements describing the coordinate system of the map; either
- 'C' or 'Q' : Celestial2000 = eQuatorial,
- 'E' : Ecliptic,
- 'G' : Galactic
if coord = ['x','y'] the map is rotated from system 'x' to system 'y'
if coord = ['y'] the map is rotated to coordinate system 'y' (with the original system assumed to be Galactic unless indicated otherwise in the input file)
see also:Rot
/CROP all if set the GIF/PNG file only contains the map and no title, color bar, ...
see also:Gif, Png
Back to Format
name routines description
EXECUTE= all character string containing IDL command(s) to be executed in the plotting window. See Figure 2 on page [*]
FACTOR= all scalar multiplicative factor to be applied to the valid data
the data plotted is of the form Factor*(data + Offset)
This does not affect the flagged pixels
Can be used together with ASINH or LOG
When used with TRUECOLORS, FACTOR can be a 3-element vector.
see also:ASINH, Offset, LOG, Truecolors
default:1.0
FITS= all string containing the name of an output FITS file with the projected map in the primary image
- if set to 1 : output the plot in plot_
proj.fits, where proj is either cartesian, gnomic, mollweide, or orthographic depending on the projection in use;
- if set to a file name : output the plot in that file.
default:0: no .FITS done
In the case of Orthographic projection, HALF_SKY must be set.
For compatibility with standard FITS viewers (including STIFF), unobserved pixels, and pixels outside the sphere, take the value
NaN (ie !values.f_nan in IDL). The resulting FITS file can be read in IDL with eg. map=readfits(filename).
see also:Map_out
/FLIP all if set the longitude increases to the right, whereas by default (astronomical convention) it increases towards the left
Back to Format
name routines description
GAL_CUT= -MO (positive float) specifies the symmetric galactic cut in degrees outside of which the monopole and/or dipole fitting is done default:0: monopole and dipole fit done on the whole sky (see also:No_dipole, No_monopole)
GIF= all string containing the name of a .GIF output
if set to 1 : output the plot in plot_[projection].gif
if set to a file name : output the plot in that file
Please note that the resulting GIF image might not always look as expected. The reason for this is a problem with 'backing store' in the IDL-routine TVRD. Please read the IDL documentation for more information.
default:no .GIF done
see also:Crop, Png, Ps, Preview and Retain
GLSIZE= all character size of the graticule labels in units of Charsize.
default:0: no labeling of graticules.
see also:Charsize, Graticule
GRATICULE= all if set, puts a graticule (ie, longitude and latitude grid) in the output astrophysical coordinates with delta_long = delta_lat = gdef degrees
if set to a scalar x> gmin then delta_long = delta_lat = x
if set to [x,y] with x,y > gmin then delta_long = x and delta_lat = y
cartview : gdef = 45, gmin = 0
gnomview : gdef = 5, gmin = 0
mollview : gdef = 45, gmin = 10
orthview : gdef = 45, gmin = 10
Note that the graticule will rotate with the sphere is Rot is set. To outline only the equator set graticule=[360,90]. The automatic labeling of the graticule is controlled by
Glsize
default:0 [no graticule]
see also:Igraticule, Rot, Coord, Glsize
Back to Format
name routines description
/HALF_SKY --O if set, only shows only one half of the sky (centered on (0,0) or on the location parametrized by Rot) instead of the full sky
HBOUND= all if set to a valid ${N_{\rm side}}$, will overplot the HEALPix pixel boundaries corresponding to that ${N_{\rm side}}$ on top of the map.
/HELP all if set, the routine header is printed (by doc_library) and nothing else is done
/HIST_EQUAL all if set, uses a histogram equalized color mapping (useful for non gaussian data field) default:uses linear color mapping and puts the level 0 in the middle of the color scale (ie, green for Blue-Red) unless Min and Max are not symmetric
see also:Asinh, Log
HXSIZE= all horizontal dimension (in cm) of the Postscript printout
default:26 cm $\simeq$ 10 in
see also:Pxsize
IGLSIZE= all character size of the input coordinates graticule labels in units of Charsize.
default:0: no labeling of graticules.
see also:Charsize, Igraticule
IGRATICULE= all if set, puts a graticule (ie, longitude and latitude grid) in the input astrophysical coordinates. See Graticule for conventions and details. If both Graticule and Igraticule are set, the latter will be represented with dashes.
The automatic labeling of the graticule is controlled by
Iglsize
default:0 [no graticule]
see also:Graticule, Rot, Coord, Iglsize
/LOG all display the log of map. This is intended for application to positive definite maps only, eg. Galactic foreground emission templates; for arbitrary maps, use /ASINH instead.
see also:Asinh, Factor, Hist_Equal, Offset
MAP_OUT= all variable that will contain the projected map on output. Unobserved pixels, and pixels outside the sphere, take value !healpix.bad_value ( $=-1.6375\,10^{30}$).
see also:Fits
MAX= all Set the maximum value for the plotted signal
default:is to use the actual signal maximum.
MIN= all Set the minimum value for the plotted signal
default:is to use the actual signal minimum.
Back to Format
name routines description
/NESTED all specify that the online data is ordered in the nested scheme
/NO_DIPOLE -MO if set (and Gal_cut is not set) the best fit monopole *and* dipole over all valid pixels are removed;
if Gal_cut is set to b>0, the best monopole and dipole fit is performed on all valid pixels with |galactic latitude|>b (in deg) and is removed from all valid pixels
default:0 (no monopole or dipole removal)
can NOT be used together with No_monopole
see also:Gal_cut, No_monopole
/NO_MONOPOLE -MO if set (and Gal_cut is not set) the best fit monopole over all valid pixels is removed;
if Gal_cut is set to b>0, the best monopole fit is performed on all valid pixels with |galactic latitude|>b (in deg) and is removed from all valid pixels
default:0 (no monopole removal)
can NOT be used together with No_dipole
see also:Gal_cut, No_dipole
/NOBAR all if set, color bar is not present
/NOLABELS all if set, color bar labels (min and max) are not present, default: labels are present
/NOPOSITION -G- if set, the astronomical location of the map central point is not indicated
OFFSET= all scalar additive factor to be applied to the valid data
the data plotted is of the form Factor*(data + Offset)
This does not affect the flagged pixels
can be used together with ASINH or LOG
When used with TRUECOLORS, OFFSET can be a 3-element vector.
see also:: ASINH, Factor, LOG, TRUECOLORS
default:0.0
Back to Format
name routines description
OUTLINE= all IDL (meta-)structure, or array of structures, containing the description of one (or several) outline(s) to be overplotted on the final map.
For each contour or point list, the corresponding (sub)structure should contain the following fields :
- 'COORD' coordinate system (either, 'C', 'G', or 'E') of the contour
- 'RA' RA/longitude coordinates of the contour vertices (array or scalar)
- 'DEC' Dec/latitude coordinates of the contour vertices (array or scalar)
- 'LINE[STYLE]' (optional, scalar)
+2: black dashes, +1: black dots, 0: black solid (default), -1: black dots on white background, -2: black dashes on white background
- 'PSY[M]' (optional, scalar) symbol used to represent vertices (same meaning as standard PSYM in IDL). If $\leq 0$, the vertices are represented with the chosen symbols, and connected, by arcs of geodesics; if >0, only the vertices are shown default:0
- 'SYM[SIZE]' (optional, scalar) vertice symbol size (same meaning as SYMSIZE in IDL)

Notes: when applicable, the vertices are connected by segments of geodesics. To obtain a better looking outline, increase the number of vertices provided. The outline does not have to be closed. The procedure will NOT attempt to close the outline.
Several outlines can be overplotted at once by gathering the respective structures into one meta-structure or an array.
see also:Coord, Graticule

PNG= all string containing the name of a .PNG output
if set to 1 : output the plot in plot_[projection].png
if set to a file name : output the plot in that file
Please note that the resulting PNG image might not always look as expected. The reason for this is problems with 'backing store' in the IDL-routine TVRD. Please read the IDL documentation for more information.
default:no .PNG done
see also: Crop, Fits, Gif, Map_out, Preview Ps, and Retain
Back to Format
name routines description
POLARIZATION= all if set to
* 0 no polarization information is plotted.
* 1 the AMPLITUDE $P = \sqrt{\left(U^2 + Q^2\right)}$ of the polarisation is plotted (as long as the input data contains polarisation information (ie, Stokes parameter Q and U for each pixel))
* 2 the ANGLE $\phi = \tan^{-1}(U/Q) /2$ of the polarisation is plotted
Note: the angles are color coded with a fixed color table (independent of Colt)
* 3 -the temperature is color coded (with a color table defined by Colt)
-and the polarisation is overplotted as headless VECTORS
default:0
Note: The representation of the polarization direction (options 2 and 3 above), include the effects of the rotations and/or changes or astronomical coordinates (controlled by ROT and COORD respectively) but do not include the effects of the distortions induced by the projection from the sphere to the plan. Because the polarization usually has more power at small scales, it must generally be represented on maps of small patches of the sky to remain legible, in which case the projection-induced distortions are small.
/PREVIEW all if set, there is a 'ghostview' preview of the postscript file or a 'xv' preview of the gif file
see also:Gif, Png and Ps
PS= all if set to 0 : no postscript output
if set to 1 : output the plot in plot_cartesian.ps, plot_gnomic.ps, plot_mollweide.ps or plot_orthographic.ps respectively
if set to a file name : output the plot in that file
default:0
see also: Preview, Gif, Png
PXSIZE= all set the number of horizontal screen_pixels or postscript_color_dots of the plot (useful for high definition color printer)
default:800 (Mollview and full sky Orthview), 600 (half sky Orthview), 500 (Cartview and Gnomonic)
PYSIZE= CG- set the number of vertical screen_pixels or postscript_color_dots of the plot
default:Pxsize
Back to Format
name routines description
RESO_ARCMIN= CG- size of screen_pixels or postscript_color_dots in arcmin
default:1.5
RETAIN= all specifies the type of backing store to use for direct graphics windows in {0,1,2}. default:2. See IDL documentation for details.
ROT= all vector with 1, 2 or 3 elements specifing the rotation angles in DEGREES to apply to the map in the 'output' coordinate system (see Coord) = ( lon0, [lat0, rat0])
lon0 : longitude of the point to be put at the center of the plot the longitude increases Eastward, ie to the left of the plot default:0
lat0 : latitude of the point to be put at the center of the plot default:0
rot0 : anti clockwise rotation to apply to the sky around the center (lon0, lat0) before projecting default:0
/SAVE all if set, assumes that File is in IDL saveset format, the variable saved should be DATA

/SHADED

--O if set, the orthographic sphere is shaded, using a Phong model, to emulate 3D viewing. The sphere is illuminated by isotropic ambiant light plus a single light source. Can NOT be used with GIF.
/SILENT all if set, the program runs silently
SUBTITLE= all String containing the subtitle to the plot
see also:Titleplot
TITLEPLOT= all String containing the title of the plot, if not set the title will be File
see also:Subtitle
TRANSPARENT= all If set to 1, the input data pixels with value !healpix.bad_value ( $=-1.6375\,10^{30}$) will appear totally transparent on the output PNG file (instead of the usual grey).
If set to 2, the background pixels will be transparent (instead of the usual white)
If set to 3, both the grey and white pixels will look transparent.
Active only in conjunction with PNG
Back to Format
name routines description
TRUECOLORS= all if the input data is of the form [Npix,3], then the 3 fields are respectively understood as Red, Green, Blue True-Color channels, and the color table is ignored.
- If set to 1, the mapping field-intensity to color is done for the 3 channels at once. (see also:Factor, Offset)
- If set to 2, that mapping is done for each channel separately (in that case, MIN and MAX keywords are ignored).
UNITS= all String containing the units, to be put on the right hand side of the color bar, overrides the value read from the input file, if any
see also:Nobar, Nolabels
WINDOW= all IDL window index (integer)
- if WINDOW < 0: virtual window: no visible window opened. Can be used with PNG or GIF, in particular is those files are larger than the screen.
Note: The Z buffer will be used instead of the X server, allowing much faster production of the image over a slow network
- if WINDOW in [0,31]: the specified IDL window with index WINDOW is used (or reused). Can be used to have a sequence of images appear in the same window
- if WINDOW > 31: a free (=unused) window with a random index > 31 will be created and used.
default:32
XPOS= all The X position on the screen of the lower left corner of the window, in device coordinate
YPOS= all The Y position on the screen of the lower left corner of the window, in device coordinate

Back to Format


DESCRIPTION


mollview reads in a HEALPix sky map in FITS format and generates a Mollweide projection of it, that can be visualized on the screen or exported in a PNG or Postscript file.mollview allows the selection of the coordinate system, map size, color table, color bar inclusion, linear or log scaling, histogram equalised color scaling, maximum and minimum range for the plot, plot-title etc. It also allows the representation of the polarization field.


RELATED ROUTINES

This section lists the routines related to mollview


idl
version 6.1 or more is necessary to run mollview
ghostview
ghostview or a similar facility is required to view the Postscript image generated by mollview.
xv
xv or a similar facility is required to view the GIF/PNG image generated by mollview (a browser can also be used).
synfast, smoothing
These F90 HEALPix facilities will generate the FITS format sky maps to be input to mollview.
isynfast, ismoothing
These IDL routines will generate the FITS format sky maps to be input to mollview.
cartview
IDL facility to generate a Cartesian projection of a HEALPix map.
cartcursor
interactive cursor to be used with cartview
gnomview
IDL facility to generate a gnomonic projection of a HEALPix map.
gnomcursor
interactive cursor to be used with gnomview
mollview
IDL facility to generate a Mollweide projection of a HEALPix map.
mollcursor
interactive cursor to be used with mollview
orthview
IDL facility to generate an orthographic projection of a HEALPix map.
orthcursor
interactive cursor to be used with orthview


EXAMPLE # 2:

map = findgen(48)

triangle= create_struct('coord','G','ra',[0,80,0],'dec',[40,45,65])
mollview,map, graticule=[45,30],rot=[10,20,30],$
$\quad\quad$ title='Mollweide projection',subtitle='mollview', $
$\quad\quad$ outline=triangle

makes a Mollweide projection of a pixel index map (see Figure 1c on page [*]) after an arbitrary rotation, with a graticule grid (with a 45o step in longitude and 30o in latitude) and an arbitrary (triangular) outline
Figure 1: Figures produced by cartview, gnomview, mollview and orthview, see respective routine documentation for details.
Image merge_visu_large


EXAMPLE # 3:

map = findgen(48)

mycommand = 'x=findgen(64)/10. & ' + $
$\quad\quad$ 'plot,x,sin(x),pos=[0.8,0.8,0.99,0.99],/noerase &' +$
$\quad\quad$ 'xyouts,0.5,0.5,''Hello World !'',/normal,charsize=2,align=0.5'
mollview,map, execute=mycommand, png='plot_example_execute.png',/preview,$
$\quad\quad$ /graticule,/glsize

produces a PNG file containing a Mollweide projection of a pixel index map with labeled graticules, a simple sine wave in the upper right corner, and some greetings, as shown on Figure 2 on page [*]
Figure 2: Figure produced by example #3.
Image plot_example_execute


EXAMPLE # 4:

pixel = l64indgen(400000)

signal = pixel * 10.0
file = 'cutsky.fits'
write_fits_cut4, file, pixel+100000, signal, nside=32768, /ring
gnomview, file, rot=[0,90], grat=30, title='high res. cut-sky map'

produces and plots a high resolution map (6.4 arcsec/pixel), in which only a very small subset of pixels is observed

EXAMPLE # 5:

file = 'wmap_band_iqumap_r9_5yr_K_v3.fits'

mollview, file, title='Linear Color Scale', /silent
mollview, file,/asinh,title='Sinh!u-1!n Color Scale' , /silent
mollview, file,/hist, title='Histogram Equalized Color Scale', /silent
mollview, file,/log, title='Log Scale', /silent

produces Mollweide projections of the same map (here the WMAP-5yr K band) with various color scales: linear, Inverse Hyperbolic Sine, Histogram Equalized, and Log. See Figure 3 on page [*]
Figure 3: Illustration (generated by example #5) of the various color scales available.
Image merge_wmapKband


EXAMPLE # 1:

mollview, 'planck100GHZ-LFI.fits', min=-100, max=100, /graticule, $
$\quad$ title='Simulated Planck LFI Sky Map at 100GHz'

mollview reads in the map 'planck100GHZ-LFI.fits' and generates an output image in which the temperature scale has been set to lie between $\pm$ 100 ($\mu$K), a graticule with a 45 degree step in longitude and latitude is drawn, and the title 'Simulated Planck LFI Sky Map at 100GHz' appended to the image.

Eric Hivon 2010-06-18
Privacy / Copyright
FIRST GOV Contact: NASA Home Page Site Manager:
Webmaster:

CL 03-2650