;+
;CRIB SHEET EXAMPLE
;PURPOSE:
; A sample crib sheet that explains how to use the "TPLOT" procedure.
;
;Written by Davin Larson 96-2-19
;
;-
;
;HINTS:
; IF using "OpenWindows", then run IDL in an xterm window and open this
;file using textedit or similar editor. To copy a line of text, triple
;click on the line and then use the middle button to copy the line into
;the IDL (xterm) window. The same technique works with dtpad and dterm.
;
;In the following text all comment lines are preceeded by a ; (semi-colon)
;All other lines are commands.
;
;This gives only a partial listing of the options that are available.
;
;Set up your device:
device,pseudo_color=8 ;fixes color table problem for machines with 24-bit color
;Pick a color table:
loadct,39 ;Rainbow (I also recommend 22)
;Generate some sample data:
_get_example_dat
;list the currently available data (just produced by _get_example_dat)
tplot_names
;Plot the quantities:
tplot, ['amp','slp','flx1','flx2']
;or alternatively:
tplot, [1,2,3,4]
;Some examples of changing plotting options:
;Limits:
ylim,'amp',3e5,3e6,1 ; set logrithmic y-limits from 3e5 to 3e6 for 'amp'
tplot
ylim,'amp',0,0,0 ; reset to linear auto-scaling
tplot
ylim ; Use the mouse to set the limit range
tplot
;Time limits
tplot_options,ref = '95-11-22' ;Set the reference time
tlimit,1,3 ;time limit from 100 UT to 300 UT
tlimit,/full ;full range
tlimit ; use cursor to select the time range
tlimit,0,0 ;back to auto ranging.
;Multiline plots:
tplot,/nocolor ; Turn of auto coloring on multi-line plots (for hardcopy)
options,'flx1','labflag',-1 ; set evenly spaced labels
tplot
options,'flx1','labflag',0 ; No labels
tplot
options,'flx1','labflag',1 ; Reverse order
tplot
options,'flx1','labflag',2 ; Auto spacing
tplot
bins = replicate(1,15)
bins( [3,6,9] ) = 0 ; turn off channels 3,6 and 9
options,'flx1','bins',bins ; add bins option
tplot
options,'flx1','bins',1 ; turn all channels on
tplot
;Spectrogram options:
zlim,'flx2',0,0,0 ; Set linear color scale
tplot
zlim,'flx2',1e3,1e4,1 ; Set limited range
tplot
zlim,'flx2',0,0 ; back to autoscaling (min = max)
tplot
options,'flx2','y_no_interp',1 ; prevent y-axis interpolation
tplot
options,'flx2','y_no_interp',0 ; allow y-axis interpolation
tplot
options,'flx2','ystyle',1 ; force exact yaxis limits
tplot
options,'flx2','spec',0 ; change to multi-line plot:
tplot
options,'flx2','spec',1 ; back to spectragram
tplot
;Setting global options: (these will affect the entire plot)
tplot_options,'title','My very own plot'
tplot
tplot_options,'region',[0.,.5,1.,1.] ; use top half of screen only
tplot
tplot_options,'region' ; remove region keyword (full screen)
tplot
tplot_options,'xmargin' ,[15,10] ; change default xmargin
tplot
tplot_options,'ymargin' ,[6,3] ; change default ymargin
tplot
tplot_options,'charsize',.5 ; change default character size
tplot
;Adding extra labels at the bottom:
;Any tplot (scaler) variable can also be printed at the bottom, below
;the time labels.
tplot,var_label=['alt']
options,'alt','ytitle','Alt (km)' ; Change the label
options,'alt','format','(f8.0)' ; Change the printing format
tplot
;Adding user defined plotting routines: (BITPLOT)
;When viewing instrument housekeeping data, it is often useful to view individual
;bits. The routine BITPLOT will do this, and can be incorporated into TPLOT.
tplot,['slp','hkp_dat'] ;
;Here bits 0-6 are counter bits, bit 7 is a threshold indicator for 'slp'
This can be plotted in normal fashion:
options,'hkp_dat','tplot_routine','mplot'
tplot
Or in BITPLOT mode:
options,'hkp_dat','tplot_routine','bitplot'
tplot
;Miscellaneous:
tplot,mix=[4,1,2] ;Mix the panel order, plot the 4th, then 1st, then 2nd
tplot,/pick ;Use the cursor to pick panels
options,'flx2','panel_size',1. ;make the spectrogram panel normal size
tplot
time_stamp,/off ;Turn of the time_stamp
tplot
time_stamp,/on ;Turn it on again
tplot
;Example of getting to the data and creating new data:
;Suppose one wishs to view the spectral data with the steep slope factored
;out. The following example shows how this might be done:
tplot,'flx2' ;display the data
get_data,'flx2',data=dat ,alim=lim ; get the data, and limits
help,dat,lim,/st
flux = dat.y ; create flux variable
avg = total(flux,1,/nan) / total(finite(flux),1) ; average over dimension 1
n = dimen1(flux) ; determine 1st dimension
avg = replicate(1.,n) # avg
help,flux,avg,n ; help
flux = flux / avg ; divide by average
dat.y = flux ; replace old data
lim.ztitle= 'New Data' ; change the title
store_data,'ndat',data=dat ,dlim=lim ; store the data for TPLOT
tplot_names ; Verify it is really there
tplot,'ndat',/add ;
;Good Luck