Ignore:
Timestamp:
03/19/07 18:15:51 (17 years ago)
Author:
pinsard
Message:

improvements/corrections of some *.pro headers

Location:
trunk/SRC/ToBeReviewed/PLOTS/DESSINE
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/plt.pro

    r171 r231  
    1 ;------------------------------------------------------------ 
    2 ;------------------------------------------------------------ 
    3 ;------------------------------------------------------------ 
    41;+ 
    52; 
    6 ; @file_comments  
     3; @file_comments 
    74; Draw horizontal graph (map) with CONTOUR procedure 
    85; 
    9 ; @categories  
     6; @categories 
    107; Graphics 
    118; 
    12 ; @param TAB1 {in}{required}  
     9; @param TAB1 {in}{required} 
    1310; The field whose we want to make the horizontal map can be: 
    1411;         1) an array. if needed, its mean along the z and t direction 
    1512;         will be automatically performed. 
    1613;         2) a structure respecting all criterions specified by 
    17 ;         litchamp.pro. cf. IDL> xhelp,'litchamp' 
    18 ;   
    19 ; @param PARAM2 {in}{optional}{default=min of tab1 (on ocean points)}  
     14;         <pro>litchamp</pro> cf. IDL> xhelp,'litchamp' 
     15; 
     16; @param PARAM2 {in}{optional}{default=min of tab1 (on ocean points)} 
    2017; Min value we want to consider in the contour's drawing. 
    2118;         Note: Could also be the type of plot that can be only 'xy' for plt 
    2219; 
    23 ; @param PARAM3 {in}{optional}{default=max of tab1 (on ocean points)}  
     20; @param PARAM3 {in}{optional}{default=max of tab1 (on ocean points)} 
    2421; Max value we want to consider in the contour's drawing. 
    2522;         Note: if param2 is defined as 'xy' then param3 is used to define the min (see param2) 
    2623; 
    27 ; @param PARAM4 {in}{optional}{default='xy'}  
     24; @param PARAM4 {in}{optional}{default='xy'} 
    2825; Type of plot (can be only 'xy' for plt). 
    2926;         Note: if param2 is defined as 'xy' then param4 is used to define the max (see param3) 
    3027; 
    3128; @keyword BOXZOOM {type=vector} 
    32 ; Vector indicating the geographic zone on which we want to cut the map.  
     29; Vector indicating the geographic zone on which we want to cut the map. 
    3330;  If BOXZOOM has : 
    3431; 1 element : The extraction is made on [lon1, lon2, lat1, lat2, 0.,boxzoom[0]] 
     
    4037; Where lon1, lon2,lat1,lat2 are global variables defined at the last domdef! 
    4138; 
    42 ; @keyword REALCONT  
     39; @keyword REALCONT 
    4340; Allow to draw continents defined in IDL. REALCONT can have 2 form: 
    4441;           /REALCONT: we draw continents in place of the mask 
    45 ;           REALCONT=2 we draw continent's contour over the mask (this allows  
     42;           REALCONT=2 we draw continent's contour over the mask (this allows 
    4643;                      to see if the mask correspond at real continents). 
    4744; 
    48 ; @keyword CONTINTERVALLE  
    49 ; When CONTOUR is activated, it is the value between 2 isolines  
    50 ; traced by a trait. So it can be different from the one specified by INTERVALLE which,  
    51 ; in this case, does not control colored isolines in color anymore. If there is noone  
    52 ; specified min, we choose a contour min which goes well with the specified interval!  
    53 ; If this keyword is not specified, we trace 20 isolines from the min to the max.  
     45; @keyword CONTINTERVALLE 
     46; When CONTOUR is activated, it is the value between 2 isolines 
     47; traced by a trait. So it can be different from the one specified by INTERVALLE which, 
     48; in this case, does not control colored isolines in color anymore. If there is noone 
     49; specified min, we choose a contour min which goes well with the specified interval! 
     50; If this keyword is not specified, we trace 20 isolines from the min to the max. 
    5451; 
    5552; @keyword CONTLABEL {type=integer} 
    5653; It is an integer n. When CONTOUR is activated, if n 
    57 ; is different of 0, choose the label type corresponding to n cases for  
    58 ; the traced by a traitisolines. To specify the type of label of the  
     54; is different of 0, choose the label type corresponding to n cases for 
     55; the traced by a traitisolines. To specify the type of label of the 
    5956; colored contour, use LABEL 
    6057; 
    6158; @keyword CONTMAX {default=The max of the array passed in the keyword CONTOUR (on ocean points)} 
    62 ; When CONTOUR is activated, max value we want to consider in the isoline  
     59; When CONTOUR is activated, max value we want to consider in the isoline 
    6360; traced by a trait's line 
    6461; 
    6562; @keyword CONTMIN {default=The min of the array passed in the keyword CONTOUR (on ocean points)} 
    66 ; When CONTOUR is activated, min value we want to consider in the isoline  
     63; When CONTOUR is activated, min value we want to consider in the isoline 
    6764; traced by a trait's line. 
    6865; 
     
    7269; CONTLABEL=0) 
    7370; 
    74 ; @keyword CONTOUR  
    75 ; If we want to trace contours of a different field than the one  
    76 ; whose we have the colored drawing (by example E-P in color and QSR in contours).  
     71; @keyword CONTOUR 
     72; If we want to trace contours of a different field than the one 
     73; whose we have the colored drawing (by example E-P in color and QSR in contours). 
    7774; It must be a field respecting same characteristics than the argument number one of plt. 
    7875; 
     
    8077; Comment: In this case, we should use a structure like field. 
    8178; 
    82 ; @keyword INTERVALLE  
    83 ; Value of an internal between to isoline. If there is none specified min,  
    84 ; we choose a min contour which goes well with the specified interval!. If this keyword is not  
    85 ; specified, we trace 20 isoline from the min to the max. Comment: When CONTOUR is activated,  
    86 ; INTERVALLE only specify the interval between 2 colored isoline. To specify the interval  
     79; @keyword INTERVALLE 
     80; Value of an internal between to isoline. If there is none specified min, 
     81; we choose a min contour which goes well with the specified interval!. If this keyword is not 
     82; specified, we trace 20 isoline from the min to the max. Comment: When CONTOUR is activated, 
     83; INTERVALLE only specify the interval between 2 colored isoline. To specify the interval 
    8784; between 2 isolines traced by a trait, use CONTINTERVALLE. 
    8885; 
    89 ; @keyword INV  
    90 ; Invert the color vector used to color the graph  
     86; @keyword INV 
     87; Invert the color vector used to color the graph 
    9188;               (without use the black, the white and the used palette) 
    92 ;  
     89; 
    9390; @keyword LABEL {type=integer} 
    94 ; It is an integer n. If n different of 0, it choose the label's type  
    95 ; corresponding to cases n. cf label.pro 
    96 ; Comment: When CONTOUR is activated, it only specify the label's type for colored isolines.  
     91; It is an integer n. If n different of 0, it choose the label's type 
     92; corresponding to cases n. cf <pro>label</pro> 
     93; Comment: When CONTOUR is activated, it only specify the label's type for colored isolines. 
    9794; For these one traced by a trait, use CONTLABEL. 
    9895;        
     
    10198; This keyword can be of two types: 
    10299;     MAP=[P0lat,P0lon,Rot]. For the description of these 3 values (see the online help of MAP_SET). 
    103 ;     /MAP: In this case, map is automatically calculated have the value:  
     100;     /MAP: In this case, map is automatically calculated have the value: 
    104101;          map = [0, (lon1+lon2)/2., 0] 
    105102; Comment: A good way to choose the type of the projection we want to do is to have a look at IDL demo: 
    106103; IDL> demo 
    107104; Then choose earth sciences and  mapping. 
    108 ; Comment2: By default it is a cylindrical projection which is effectuated (with or without the keyword map).  
     105; Comment2: By default it is a cylindrical projection which is effectuated (with or without the keyword map). 
    109106; If we want an other projection, MAP must be activated and we have to add the keyword: /nom_projection. 
    110107; For example, for a polar projection centered on the south pole: 
     
    115112; Corresponds to label keywords of map_set. 
    116113; 
    117 ; @keyword MAXIN  
     114; @keyword MAXIN 
    118115; to specify the max value we want to plot with a keyword instead of with the 
    119116; input parameter max. If max is defined by both, parameter and keyword, the 
    120117; keyword is retained. 
    121118; 
    122 ; @keyword MININ  
     119; @keyword MININ 
    123120; to specify the min value we want to plot with a keyword instead of with the 
    124121; input parameter min. If min is defined by both, parameter and keyword, the 
     
    129126; LABEL=0 or is not specified. 
    130127; 
    131 ; @keyword NOTRI  
    132 ; To force not to use the triangulation. Beware, in this case, the  
    133 ; drawing only works if the grid is undeformed (It means that each point of a longitude  
    134 ; give one latitude and each point of a latitude give one longitude) except if we use  
    135 ; the keyword CELL_FILL=2.  
     128; @keyword NOTRI 
     129; To force not to use the triangulation. Beware, in this case, the 
     130; drawing only works if the grid is undeformed (It means that each point of a longitude 
     131; give one latitude and each point of a latitude give one longitude) except if we use 
     132; the keyword CELL_FILL=2. 
    136133; Comment: if the field contain points !values.f_nan, then we even do a triangulation. 
    137134; 
    138 ; @keyword OVERPLOT  
    139 ; To make a plot over an other one.  
    140 ; Comment: Contrarily to the use of CONTOUR or VECTEUR, the use of this keyword  
     135; @keyword OVERPLOT 
     136; To make a plot over an other one. 
     137; Comment: Contrarily to the use of CONTOUR or VECTEUR, the use of this keyword 
    141138; does not the caption and/or the color bar. 
    142139; 
    143 ; @keyword STRICTFILL  
    144 ; Activate this keyword to that the filling of contours be  
    145 ; precisely done between the min and the max specified letting values inferior at the  
     140; @keyword STRICTFILL 
     141; Activate this keyword to that the filling of contours be 
     142; precisely done between the min and the max specified letting values inferior at the 
    146143; specified min and values superior at the specified max in white. 
    147144; 
     
    158155; 
    159156; @keyword _EXTRA 
    160 ; used to pass your keywords 
    161 ;  
    162 ; @keyword CONT_NOFILL        
    163 ; Activate it not to fill the point mask to let them transparent!  
     157; Used to pass keywords 
     158; 
     159; @keyword CONT_NOFILL 
     160; Activate it not to fill the point mask to let them transparent! 
    164161; Comment: Nevertheless, we trace mask's contour. 
    165 ;  
     162; 
    166163; @keyword USETRI 
    167164; To force using triangulation. 
    168 ;  
    169 ; @keyword MASKFILL  
    170 ;  
     165; 
     166; @keyword MASKFILL 
     167; 
    171168; @keyword DUPLICATE 
    172169; 
     
    176173; common.pro 
    177174; 
    178 ; @history  
     175; @history 
    179176; Sebastien Masson (smasson\@lodyc.jussieu.fr) 
    180177; 7/1999 
    181178; Sebastien Masson 08/02/2000 checkfield and 
    182179; notri keyword (or triangule = -1) . 
    183 ;  
     180; 
    184181; @version 
    185182; $Id$ 
    186 ;  
    187 ; @todo seb  
     183; 
     184; @todo seb 
    188185; Changer param "tab1",keyword "REMPLI", "UNLABSUR", "UNSUR2", 
    189186; "UNVECTSUR"+ quelques trucs dans la routine. 
    190187;- 
    191 ;------------------------------------------------------------ 
    192 ;------------------------------------------------------------ 
    193 ;------------------------------------------------------------ 
    194 pro plt, tab1, param2, param3, param4, REALCONT = realcont, CONTOUR = contour $ 
     188; 
     189PRO plt, tab1, param2, param3, param4, REALCONT = realcont, CONTOUR = contour $ 
    195190         , INTERVALLE = intervalle, INV = inv, GRIDTYPE = gridtype, BOXZOOM = boxzoom $ 
    196191         , CONTINTERVALLE = contintervalle, LABEL = label, CONTLABEL = contlabel $ 
     
    201196         , DUPLICATE = duplicate, STRICTFILL = strictfill, OVERPLOT = overplot $ 
    202197         , DECIMATETRI = decimatetri,  LABMAP = labmap, _extra = ex 
    203 ;--------------------------------------------------------- 
    204 ; include common 
    205198; 
    206199  compile_opt idl2, strictarrsubs 
     
    239232  if n_elements(param3) NE 0 then min = param3 
    240233  if n_elements(param4) NE 0 then max = param4 
    241   if n_elements(minin) NE 0 then min = minin  
     234  if n_elements(minin) NE 0 then min = minin 
    242235  if n_elements(maxin) NE 0 then max = maxin 
    243236  checktypeminmax, 'plt', TYPE = type, MIN = min, MAX = max, _extra = ex 
    244   z2d = checkfield(tab1, 'plt', TYPE = type, BOXZOOM = boxzoom, DIREC = direc, VECTEUR = vecteur, _extra = ex)  
    245   if z2d[0] EQ -1 then BEGIN  
     237  z2d = checkfield(tab1, 'plt', TYPE = type, BOXZOOM = boxzoom, DIREC = direc, VECTEUR = vecteur, _extra = ex) 
     238  if z2d[0] EQ -1 then BEGIN 
    246239    IF keyword_set(savedbox) THEN restoreboxparam, 'boxparam4plt.dat' 
    247240    return 
     
    249242  IF n_elements(usetri) EQ 0 THEN BEGIN 
    250243; do we have holes in the triangulation? 
    251     holeintri = n_elements(triangles_list)/3 LT (jpi-1+keyword_set(key_periodic))*(jpj-1)*2 ; -> the triangulation must be used to draw the field  
     244    holeintri = n_elements(triangles_list)/3 LT (jpi-1+keyword_set(key_periodic))*(jpj-1)*2 ; -> the triangulation must be used to draw the field 
    252245; do we have a triangulation? 
    253246    wehavetri = triangles_list[0] NE -1 ; -> the triangulation must be used to draw the continents 
     
    260253      'F':nx = nxf 
    261254    ENDCASE 
    262     mapperio = keyword_set(map)*keyword_set(key_periodic)*(nx eq jpi)  
     255    mapperio = keyword_set(map)*keyword_set(key_periodic)*(nx eq jpi) 
    263256    usetri = (wehavetri*(wehavetri+holeintri+mapperio+keyword_set(key_irregular))) < 2 
    264257    IF n_elements(notri) NE 0 THEN usetri = 0 > (2-notri) 
     
    273266;--------------------------------------------------------------- 
    274267  IF  strupcase(vargrid) EQ 'W' THEN profond = firstzw NE 0 $ 
    275   ELSE profond = firstzt NE 0  
     268  ELSE profond = firstzt NE 0 
    276269; do we need to extract now the triangulation that will be use for 
    277270; contouring the field? 
     
    288281  ENDELSE 
    289282;---------------------------------------------------------------------------- 
    290 ; I5 determination of the mi:min and of the ma:max of z2d in the same way  
     283; I5 determination of the mi:min and of the ma:max of z2d in the same way 
    291284; as max: max and min: min for the drawing. 
    292285;----------------------------------------------------------------------------- 
    293286  masknan = finite(z2d) 
    294   nan = total(masknan) NE n_elements(z2d)  
     287  nan = total(masknan) NE n_elements(z2d) 
    295288; Do we need to do an autoscale ??? 
    296289  autoscale = testvar(var = min) EQ testvar(var = max) AND NOT keyword_set(intervalle) 
     
    302295;-------------------------------------------------------------- 
    303296;-------------------------------------------------------------- 
    304 ; II) We put the drawing in its place on the window or the page  
     297; II) We put the drawing in its place on the window or the page 
    305298; and possible opening of the window or of the page. 
    306299;-------------------------------------------------------------- 
     
    361354;---------------------------------------------------------- 
    362355; check mask and triangulation according to the grid type and NaN 
    363 ;----------------------------------------------------------  
    364 ; If we make a drawing at depth, we must redefine a triangulation  
     356;---------------------------------------------------------- 
     357; If we make a drawing at depth, we must redefine a triangulation 
    365358; on the zoom because the land/sea mask at depth may differ from 
    366359; the one at the surface. 
     
    385378;  IF n_elements(twin_corners_up) EQ 0 THEN coinmontemask = -1 ELSE coinmontemask = twin_corners_up 
    386379;  IF n_elements(twin_corners_dn) EQ 0 THEN coindescendmask =  -1 ELSE coindescendmask = twin_corners_dn 
    387   if vargrid EQ 'T' OR vargrid EQ 'W' then BEGIN  
     380  if vargrid EQ 'T' OR vargrid EQ 'W' then BEGIN 
    388381    glammsk = glam 
    389382    gphimsk = gphi 
    390383  ENDIF ELSE begin 
    391 ; decoupe terre: To draw the coast in a clean way, we try to take additionally  
     384; decoupe terre: To draw the coast in a clean way, we try to take additionally 
    392385; points to draw the land. Like that, we do not see gap between T and U/V/F grid. 
    393386; It is what decoupeterre do. We also redefine trimsk. 
     
    402395;------------------------------------------------------------ 
    403396  typetrace = 'classique' 
    404   if keyword_set(map) AND key_onearth then BEGIN  
     397  if keyword_set(map) AND key_onearth then BEGIN 
    405398; Call of  mapset when we want to do projections. 
    406399    IF n_elements(map) NE 3 THEN map = [0, ((lon1+lon2)/2.) MOD 360, 0] 
     
    410403    map_rot = map[2] 
    411404    if chkstru(ex, 'TITLE') then begin 
    412       maptitre = ex.title  
     405      maptitre = ex.title 
    413406      ex.title = '' 
    414407    endif 
     
    418411    if n_elements(trifield) GE 2 then trifield = ciseauxtri(trifield, glam, gphi, _EXTRA = ex) 
    419412    if n_elements(trimsk) GE 2 then trimsk = ciseauxtri(trimsk, glammsk, gphimsk, _EXTRA = ex) 
    420     if n_elements(trinan) GE 2 then BEGIN  
     413    if n_elements(trinan) GE 2 then BEGIN 
    421414      trinan = ciseauxtri(trinan, glam, gphi, _EXTRA = ex) 
    422415      if trinan[0] EQ -1 then undefine, trinan 
    423416    endif 
    424   ENDIF ELSE BEGIN  
     417  ENDIF ELSE BEGIN 
    425418;To axes of coordinates be considerated. 
    426419    if !x.type EQ 0 AND n_elements(contour) LE 4 then $ 
    427       plot, [0], [0], /nodata, xstyle = 5, ystyle = 5, title = '', subtitle = '', /noerase  
     420      plot, [0], [0], /nodata, xstyle = 5, ystyle = 5, title = '', subtitle = '', /noerase 
    428421    if keyword_set(key_periodic) then BEGIN 
    429 ; In this case, triangulation is closed in x and cover all the sphere.  
     422; In this case, triangulation is closed in x and cover all the sphere. 
    430423; We have to cut it at the level where we cut the sphere to make the drawing. 
    431424      if n_elements(trifield) GE 2 then trifield = ciseauxtri(trifield, glam, gphi, _EXTRA = ex) 
     
    461454                           , Connout, vertices = Vertsout $ 
    462455                           , percent_vertices = decimatetri) 
    463     connout = reform(connout, 4,  n_elements(connout)/4, /over)  
     456    connout = reform(connout, 4,  n_elements(connout)/4, /over) 
    464457    trifield = (temporary(connout))[1:3, *] 
    465458    glam = reform(Vertsout[0, *]) 
     
    467460    z2d = reform(Vertsout[2, *]) 
    468461    undefine, Vertsout 
    469     print, 'temps decimatetri', systime(1)-tempsdeux  
     462    print, 'temps decimatetri', systime(1)-tempsdeux 
    470463  ENDIF 
    471464  pltbase, z2d, glam, gphi $ 
     
    486479    return 
    487480  endif 
    488   if keyword_set(contour) THEN BEGIN  
     481  if keyword_set(contour) THEN BEGIN 
    489482    pourlegende = [1, 1, 1, 1] 
    490483    oldattributs = saveatt() 
     
    507500; V1) Possible add of vectors in double exposure. 
    508501;------------------------------------------------------------ 
    509   if keyword_set(vecteur) then BEGIN  
     502  if keyword_set(vecteur) then BEGIN 
    510503    oldattributs = saveatt() 
    511504    ajoutvect, vecteur, vectlegende, _extra = ex 
     
    545538;------------------------------------------------------------ 
    546539  legende, mi, ma, 'xy', CONTOUR = pourlegende, VECTLEGENDE = vectlegende, INTERVALLE = intervalle, DIREC = direc, _EXTRA = ex 
    547   if n_elements(ex) NE 0 then BEGIN  
     540  if n_elements(ex) NE 0 then BEGIN 
    548541; To keep frame's axes in black 
    549542    if (where(tag_names(ex) EQ 'COLOR'))[0] NE -1 then ex.COLOR = coast_color 
     
    553546    'classique': $ 
    554547      plot, [0], [0], /nodata, /noerase, color = 0, xstyle = 1, ystyle = 1, _extra = ex 
    555     'projection': BEGIN  
     548    'projection': BEGIN 
    556549      if chkstru(ex, 'NOERASE') then begin 
    557550        oldnoerase = ex.noerase 
     
    592585sortie: 
    593586  if keyword_set(savedbox) THEN restoreboxparam, 'boxparam4plt.dat' 
    594   if keyword_set(key_performance) NE 0 THEN print, 'temps plt', systime(1)-tempsun  
     587  if keyword_set(key_performance) NE 0 THEN print, 'temps plt', systime(1)-tempsun 
    595588;------------------------------------------------------------ 
    596589;------------------------------------------------------------ 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/plt1d.pro

    r172 r231  
    1 ;------------------------------------------------------------ 
    21;+ 
    32; 
     
    87; Graphics 
    98; 
    10 ; @param TAB {in}{required}  
     9; @param TAB {in}{required} 
    1110; The field whose we want to make the hovmoller map can be 2 kind of thing: 
    1211;       1) An array which can be: 
    13 ;          * 2d, 3d or 4d:  array xy, xyz. xyt or xyzt. In this case, the array will pass  
    14 ;          in moyenne or grossemoyenne to be averaged and become  an array 1d.  
    15 ;          * 1d:Nevertheless, the type must be specified in order to we know which trace  
     12;          * 2d, 3d or 4d:  array xy, xyz. xyt or xyzt. In this case, the array will pass 
     13;          in moyenne or grossemoyenne to be averaged and become  an array 1d. 
     14;          * 1d:Nevertheless, the type must be specified in order to we know which trace 
    1615;          it is about. To have a correct caption, respecify the  extraction zone via BOXZOOM. 
    17 ;       2) a structure respecting all criterions specified by litchamp.pro.  
    18 ;          See IDL> xhelp,'litchamp'. The array contained in the structure  
    19 ;          respecting criterions of case 1)  
    20 ; 
    21 ; @param PARAM2 {in}{required}  
     16;       2) a structure respecting all criterions specified by <pro>litchamp</pro> 
     17;          See IDL> xhelp,'litchamp'. The array contained in the structure 
     18;          respecting criterions of case 1) 
     19; 
     20; @param PARAM2 {in}{required} 
    2221; Min value we want to consider in the contour's drawing. 
    2322; Note: could also be the type of plot:'x','y','z' 
    24 ;   
    25 ; @param PARAM3 {in}{optional}{default=min/max of tab (on ocean points)}  
     23; 
     24; @param PARAM3 {in}{optional}{default=min/max of tab (on ocean points)} 
    2625; Max value we want to consider in the contour's drawing. 
    2726; Note: if param2 is defined as 'x','y','z' then param3 is used to define the min (see param2) 
    2827; 
    29 ; @param PARAM4 {in}{optional}{default=max of tab (on ocean points)}  
     28; @param PARAM4 {in}{optional}{default=max of tab (on ocean points)} 
    3029; Type of plot (can be only 'x','y','z' for plt1d). 
    3130; Note: if param2 is defined as 'xy' then param4 is used to define the max (see param3) 
    3231; 
    3332; @keyword BOXZOOM 
    34 ; Vector indicating the geographic zone (3d) on which the extraction of the field must  
     33; Vector indicating the geographic zone (3d) on which the extraction of the field must 
    3534; be done to do the hovmoeller. 
    3635;  If BOXZOOM has : 
     
    4443; 
    4544; @keyword COL1d 
    46 ;  --OBSOLETE--Color number when we make a trace 1d by default, 0.It is better to use the  
    47 ; keyword COLOR used by plot. 
    48 ; 
    49 ; @keyword ENDPOINTS  
    50 ; keyword specifying that we want to make a vertical cut in diagonal. Then coordinated of extremities  
    51 ; of these one are defined by the 4 elements of the vector ENDPOINTS: [x1,y1,x2,y2] which are  
    52 ; coordinates. 
    53 ; 
    54 ; @keyword MAXIN  
    55 ; Allows to specify the max value we want to consider in the drawing of contour  
    56 ; helping by the keyword instead of the argument max. If the argument and the keyword are  
    57 ; specified in the same time, it is the value specified by the keyword which is retained. 
    58 ; 
    59 ; @keyword MININ  
    60 ; Allows to specify the min value we want to consider in the drawing of contour  
    61 ; helping by the keyword instead of the argument min. If the argument and the keyword are  
    62 ; specified in the same time, it is the value specified by the keyword which is retained. 
     45;  --OBSOLETE--Color number when we make a trace 1d by default, 0. 
     46; It is better to use the keyword COLOR used by plot. 
     47; 
     48; @keyword ENDPOINTS 
     49; keyword specifying that we want to make a vertical cut in diagonal. 
     50; Then coordinated of extremities of these one are defined by the 4 elements 
     51; of the vector ENDPOINTS: [x1,y1,x2,y2] which are coordinates. 
     52; 
     53; @keyword MAXIN 
     54; Allows to specify the max value we want to consider in the drawing of contour 
     55; helping by the keyword instead of the argument max. 
     56; If the argument and the keyword are specified in the same time, it is the 
     57; value specified by the keyword which is retained. 
     58; 
     59; @keyword MININ 
     60; Allows to specify the min value we want to consider in the drawing of contour 
     61; helping by the keyword instead of the argument min. 
     62; If the argument and the keyword are specified in the same time, it is the 
     63; value specified by the keyword which is retained. 
    6364; 
    6465; @keyword OV1D 
    6566; Allow the double exposure of an 1d curve to a precedent 1d trace. 
    6667; 
    67 ; @keyword REVERSE_X  
     68; @keyword REVERSE_X 
    6869; To invert the x axis (so as the drawing) 
    6970; 
    70 ; @keyword REVERSE_Y  
     71; @keyword REVERSE_Y 
    7172; To invert the y axis (so as the drawing) 
    7273; 
    73 ; @keyword SIN  
    74 ; Activate this keyword if we want the x axis to be traced in sinus of the  
     74; @keyword SIN 
     75; Activate this keyword if we want the x axis to be traced in sinus of the 
    7576; latitude when we make a drawing f(y) 
    7677; 
    77 ; @keyword STY1D  
     78; @keyword STY1D 
    7879; --OBSOLETE-- 
    79 ; Number of the style used when we make a 1d drawing. We should better use the  
    80 ; keyword LINESTYLE which is tho one of the plot. Beware, this keyword is still  
     80; Number of the style used when we make a 1d drawing. We should better use the 
     81; keyword LINESTYLE which is tho one of the plot. Beware, this keyword is still 
    8182; useful if we want to d bars instead of curves, put sty1d='bar' 
    8283; 
    8384; @keyword TYPEIN 
    8485; allows to specify the type of hovmoller we want to do 
    85 ;             'xt','yt','zt','t'   
    86 ; with help of a keyword rather than the argument type. If the argument and the  
    87 ; keyword are specified in the same time, it is the value specified by the  
     86;             'xt','yt','zt','t' 
     87; with help of a keyword rather than the argument type. If the argument and the 
     88; keyword are specified in the same time, it is the value specified by the 
    8889; keyword which is retained. 
    8990; 
    90 ; @keyword _EXTRA  
    91 ; used to pass your keywords 
    92 ; 
    93 ; @history  
    94 ; creation 24/6/99 Eric Guilyardi  
     91; @keyword _EXTRA 
     92; Used to pass keywords 
     93; 
     94; @history 
     95; creation 24/6/99 Eric Guilyardi 
    9596; (a partir routine pltt de Sebastien Masson) 
    96 ; 8/7/1999 Sebastien Masson (smasson\@lodyc.jussieu.fr)  
     97; 8/7/1999 Sebastien Masson (smasson\@lodyc.jussieu.fr) 
    9798; inspection des travaux finis 
    9899; 8/2/2000 Sebastien Masson: checkfield 
    99100; 
    100 ; @version  
     101; @version 
    101102; $Id$ 
    102103; 
    103104;- 
    104 ;------------------------------------------------------------ 
    105 ;------------------------------------------------------------ 
    106 ;------------------------------------------------------------ 
    107 pro plt1d, tab, param2, param3, param4, BOXZOOM = boxzoom, SIN = sin $ 
     105; 
     106PRO plt1d, tab, param2, param3, param4, BOXZOOM = boxzoom, SIN = sin $ 
    108107           , MININ = minin, MAXIN = maxin, TYPEIN = typein, ENDPOINTS = endpoints $ 
    109108           , COL1D = col1d, STY1D = sty1d, OV1D = ov1d, X = x, Y = y, Z = z, TT = tt $ 
     
    137136  if n_elements(maxin) NE 0 then max = maxin 
    138137  if keyword_set(tt) then typein = 't' 
    139   if keyword_set(typein) then BEGIN  
     138  if keyword_set(typein) then BEGIN 
    140139    if size(type, /type) NE 7 AND size(type, /type) NE 0 then begin 
    141140      if n_elements(min) NE 0 then max = min 
     
    146145; 
    147146  checktypeminmax, 'plt1d', TYPE = type, MIN = min, MAX = max, ENDPOINTS = endpoints $ 
    148     , XX = keyword_set(x), YY = keyword_set(y), ZZ = keyword_set(z)  
     147    , XX = keyword_set(x), YY = keyword_set(y), ZZ = keyword_set(z) 
    149148  if type EQ 't' then BEGIN 
    150149    pltt, tab, type, min, max, BOXZOOM = boxzoom, SIN = sin, TYPEIN = typein $ 
     
    168167    section, tab, z1d, glam, gphi, ENDPOINTS = endpoints, TYPE = type $ 
    169168      , BOXZOOM = boxzoom, DIREC = direc 
    170     nx = n_elements(glam)  
     169    nx = n_elements(glam) 
    171170    ny = nx 
    172171    if strupcase(vargrid) EQ 'W' then begin 
     
    177176      nz = nzt 
    178177    ENDELSE 
    179   ENDIF ELSE BEGIN  
     178  ENDIF ELSE BEGIN 
    180179    z1d = checkfield(tab, 'plt1d', TYPE = type, BOXZOOM = boxzoom $ 
    181180                     , direc = direc, _extra = ex) 
    182181    grille, mask, glam, gphi, gdep, nx, ny, nz, type = type 
    183182  ENDELSE 
    184   if z1d[0] EQ -1 then BEGIN  
     183  if z1d[0] EQ -1 then BEGIN 
    185184    IF keyword_set(savedbox) THEN restoreboxparam, 'boxparam4plt1d.dat' 
    186185    return 
    187186endif 
    188 ; We build the mask. For this, the array must be hidden (Automaticaly done at valmask  
     187; We build the mask. For this, the array must be hidden (Automaticaly done at valmask 
    189188; value if we pass in moyenne or grossemoyenne) 
    190189  mask = fltarr(n_elements(z1d)) 
     
    212211;----------------------------------------------------------------------------- 
    213212; definition of the abscisse and ordinate vectors. 
    214 ; The triangulation is defined in order to the drawing be done from the  
    215 ; left bottom to the right up. So the matrix have to be shown like this,  
     213; The triangulation is defined in order to the drawing be done from the 
     214; left bottom to the right up. So the matrix have to be shown like this, 
    216215; from which some transpose and reverse 
    217216;----------------------------------------------------------------------------- 
     
    220219    'y': begin 
    221220      yy = z1d 
    222       IF (size(gphi))[0] EQ 1 then xx = gphi ELSE BEGIN  
    223         IF keyword_set(key_irregular) THEN BEGIN  
     221      IF (size(gphi))[0] EQ 1 then xx = gphi ELSE BEGIN 
     222        IF keyword_set(key_irregular) THEN BEGIN 
    224223          cln = (where(gphi EQ max(gphi)))[0] 
    225224          xx = reform(gphi[cln MOD nx, *]) 
     
    233232      xx = glam[*, 0] 
    234233      min0 = lon1 & max0 = lon2 
    235     END  
     234    END 
    236235    'z':begin 
    237236      yy = reverse(gdep, 1) 
     
    247246      endcase 
    248247      if NOT keyword_set(ov1d) then !y.range = reverse(!y.range) 
    249     END  
    250   ENDCASE  
     248    END 
     249  ENDCASE 
    251250;----------------------------------------------------------- 
    252251;----------------------------------------------------------- 
     
    263262  if type EQ 'z' then begin 
    264263    idx = where(xx NE valmask) 
    265     if NOT keyword_set(ov1d) then BEGIN  
     264    if NOT keyword_set(ov1d) then BEGIN 
    266265      if min EQ mi then !x.range = [min-abs(max-min)/5., max+abs(max-min)/5.] $ 
    267266      ELSE !x.range = [min, max] 
    268267    ENDIF 
    269   ENDIF ELSE BEGIN  
     268  ENDIF ELSE BEGIN 
    270269    idx = where(yy NE valmask) 
    271     if NOT keyword_set(ov1d) then BEGIN  
     270    if NOT keyword_set(ov1d) then BEGIN 
    272271      if min EQ mi then !y.range = [min-abs(max-min)/5., max+abs(max-min)/5.] $ 
    273272      ELSE !y.range = [min, max] 
    274273    ENDIF 
    275   ENDELSE  
    276 ; 
    277   if NOT keyword_set(ov1d) then BEGIN  
     274  ENDELSE 
     275; 
     276  if NOT keyword_set(ov1d) then BEGIN 
    278277    legende, mi, ma, type, CONTOUR = contour, DIREC = direc, ENDPOINTS = endpoints, _EXTRA = ex 
    279278; 
     
    283282    xx = yy 
    284283    yy = temporary(tmp) 
    285     if NOT keyword_set(ov1d) then BEGIN  
     284    if NOT keyword_set(ov1d) then BEGIN 
    286285      tmp = !x 
    287286      !x = !y 
     
    289288    ENDIF 
    290289  ENDIF 
    291   if NOT keyword_set(ov1d) then BEGIN  
     290  if NOT keyword_set(ov1d) then BEGIN 
    292291    if keyword_set(reverse_x) then !x.range = reverse(!x.range) 
    293292    if keyword_set(reverse_y) then !y.range = reverse(!y.range) 
     
    299298  if keyword_set(sty1d) then BEGIN ;If we want to make bars 
    300299    IF strlowcase(strtrim(sty1d)) EQ 'bar' then begin 
    301       !y.range = [!y.range[0]-(!y.range[1]-!y.range[0])*.05, !y.range[1]]  
     300      !y.range = [!y.range[0]-(!y.range[1]-!y.range[0])*.05, !y.range[1]] 
    302301      bar_plot, yy, background = (!d.n_colors-1) < 255,  $ 
    303302        baselines = replicate(!y.range[0], n_elements(yy)), barnames = ['', ''], $ 
    304303        colors    = replicate(col1d, n_elements(yy)), /outline 
    305       if n_elements(ex) NE 0 then BEGIN  
     304      if n_elements(ex) NE 0 then BEGIN 
    306305; To have a black frame 
    307306        if (where(tag_names(ex) EQ 'COLOR'))[0] NE -1 then ex.COLOR = 0 
     
    309308      plot, [0], [0], /noerase, /nodata, _extra = ex 
    310309      GOTO, fini 
    311     ENDIF  
    312   ENDIF 
    313 ; 
    314   if NOT keyword_set(ov1d) then BEGIN  
     310    ENDIF 
     311  ENDIF 
     312; 
     313  if NOT keyword_set(ov1d) then BEGIN 
    315314; 
    316315    plot, xx, yy, color = col1d, linestyle = sty1d, thick = 2, title = '', subtitle = '', _extra = ex 
    317     if n_elements(ex) NE 0 then BEGIN  
     316    if n_elements(ex) NE 0 then BEGIN 
    318317; To have a 0 colored frame and trace a line at y=0 
    319318      if (where(tag_names(ex) EQ 'COLOR'))[0] NE -1 then ex.COLOR = 0 
     
    340339;------------------------------------------------------------ 
    341340  if n_elements(key_performance) NE 0 then $ 
    342     IF key_performance EQ 1 THEN print, 'temps plt1d', systime(1)-tempsun  
     341    IF key_performance EQ 1 THEN print, 'temps plt1d', systime(1)-tempsun 
    343342;------------------------------------------------------------ 
    344343;------------------------------------------------------------ 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/pltbase.pro

    r226 r231  
    1 ;------------------------------------------------------------ 
    2 ;------------------------------------------------------------ 
    3 ;------------------------------------------------------------ 
    41;+ 
    52; 
     
    9390; 
    9491; @keyword _EXTRA 
    95 ; Used to pass your keywords 
     92; Used to pass keywords 
    9693; 
    9794; @uses 
     
    113110; 
    114111;- 
    115 ;------------------------------------------------------------ 
    116 ;------------------------------------------------------------ 
    117 ;------------------------------------------------------------ 
     112; 
    118113PRO pltbase, z2d, x, y, mask, xm, ym, levels, colors, UNSUR2 = unsur2, CONTOUR = contour $ 
    119114             , NOCONTOUR = nocontour, NOFILL = nofill $ 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/pltsc.pro

    r163 r231  
    22; @file_comments 
    33; 
    4 ; 
    54; @categories 
    6 ; 
    75; 
    86; @param TAB1 
    97; 
    10 ; 
    118; @param TAB2 
    12 ; 
    139; 
    1410; @param MIN1 
    1511; 
    16 ; 
    1712; @param MAX1 
    18 ; 
    1913; 
    2014; @param MIN2 
    2115; 
    22 ; 
    2316; @param MAX2 
    24 ; 
    2517; 
    2618; @param VARNAME2 
    2719; 
    28 ; 
    2920; @keyword BOXZOOM 
    30 ; Vector indicating the geographic zone on which we want to cut the map.  
     21; Vector indicating the geographic zone on which we want to cut the map. 
    3122;  If BOXZOOM has : 
    3223; 1 element : The extraction is made on [lon1, lon2, lat1, lat2, 0.,boxzoom[0]] 
     
    3829; @keyword COL1D 
    3930; 
    40 ; 
    4131; @keyword STY1D 
    42 ; 
    4332; 
    4433; @keyword OV1D 
    4534; 
    46 ; 
    4735; @keyword _EXTRA 
    48 ; Used to pass your keywords 
     36; Used to pass keywords 
    4937; 
    5038; @returns 
    5139; 
    52 ; 
    5340; @uses 
    54 ; 
    5541; 
    5642; @restrictions 
    5743; 
    58 ; 
    5944; @examples 
    6045; 
    61 ; 
    6246; @history 
    63 ; 
    6447; 
    6548; @version 
     
    7457; scatter plot (inspired from plt1d) 
    7558; 
    76 ; 
    7759  compile_opt idl2, strictarrsubs 
    7860; 
    79  
    80 ;--------------------------------------------------------- 
    81 ; include common 
    8261@cm_4mesh 
    8362@cm_4data 
     
    8665@updatekwd 
    8766  ENDIF 
    88 ;-------------------------------------------------------------- 
    8967 
    9068; Comment: We do not reinitializate when we call back pltsc 
     
    9270   ;; reduce data xyzt domain 
    9371 
    94    if keyword_set(boxzoom) then BEGIN  
     72   if keyword_set(boxzoom) then BEGIN 
    9573     Case 1 Of 
    9674       N_Elements(Boxzoom) Eq 1:bte = [lon1, lon2, lat1, lat2, 0., boxzoom[0]] 
     
    10078       N_Elements(Boxzoom) Eq 6:bte = Boxzoom 
    10179       Else: Begin 
    102          ras = report('Wrong Definition of Boxzoom')  
     80         ras = report('Wrong Definition of Boxzoom') 
    10381         return 
    10482       End 
     
    122100   IF finite(min2) EQ 0 THEN min2 = min(tab2) 
    123101   IF finite(max2) EQ 0 THEN max2 = max(tab2) 
    124     
     102 
    125103 
    126104; init plot if not overlay 
    127     
     105 
    128106   IF NOT keyword_set(ov1d) THEN placedessin, 'yfx', posfenetre, posbar, $ 
    129107    contour = contour, _extra = ex 
     
    137115   IF (NOT keyword_set(sty1d)) THEN sty1d = 0 
    138116   IF (NOT keyword_set(col1d)) THEN col1d = 0 
    139    IF  NOT keyword_set(ov1d) THEN  BEGIN  
    140       legende, min1, max1, 'yfx', VARNAME2 = varname2, NPTS = npts, _EXTRA = ex  
     117   IF  NOT keyword_set(ov1d) THEN  BEGIN 
     118      legende, min1, max1, 'yfx', VARNAME2 = varname2, NPTS = npts, _EXTRA = ex 
    141119; 
    142120      plot,xx,yy, background = 255, psym = sty1d+1, color=col1d, thick=2 $ 
    143121       , title = '', subtitle = '',_extra = ex 
    144122 
    145       if n_elements(ex) NE 0 then BEGIN  
     123      if n_elements(ex) NE 0 then BEGIN 
    146124; To have a 0 colored frame and trace a line at y=0 
    147125         if (where(tag_names(ex) EQ 'COLOR'))[0] NE -1 then ex.COLOR = 0 
     
    162140;------------------------------------------------------------ 
    163141   if n_elements(key_performance) NE 0 then $ 
    164     IF key_performance EQ 1 THEN print, 'temps plt1d', systime(1)-tempsun  
     142    IF key_performance EQ 1 THEN print, 'temps plt1d', systime(1)-tempsun 
    165143;------------------------------------------------------------ 
    166144;------------------------------------------------------------ 
     
    168146   return 
    169147end 
    170  
    171  
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/pltt.pro

    r192 r231  
    1 ;------------------------------------------------------------ 
    21;+ 
    32; 
    4 ; @file_comments  
     3; @file_comments 
    54; Trace hovmoller graphs: xt,yt,zt,t 
    65; 
    76; @categories Graphics 
    87; 
    9 ; @param TAB {in}{required}  
     8; @param TAB {in}{required} 
    109; The field whose we want to make the hovmoller map can be 2 kind of thing: 
    1110;       1) An array which can be: 
    12 ;          * 3d or 4d: array  'xt','yt','zt','t'. The last component is the time. In this case, the array will  
     11;          * 3d or 4d: array  'xt','yt','zt','t'. The last component is the time. In this case, the array will 
    1312;            pass in grossemoyenne to be averaged and become an 1d or 2d array. 
    14 ;          * 2d: If the array is already 2d, it is not modified (beware, lands must  
    15 ;            be masked at the value valmask) and nevertheless,type must be specified  
     13;          * 2d: If the array is already 2d, it is not modified (beware, lands must 
     14;            be masked at the value valmask) and nevertheless,type must be specified 
    1615;            to we know of which trace it is about. 
    1716;            To have a correct caption, respecify the  extraction zone via BOXZOOM. 
    18 ;          * 1d: only for traces of the 't' type. Nevertheless, type must be specified  
     17;          * 1d: only for traces of the 't' type. Nevertheless, type must be specified 
    1918;            to we know of which trace it is about. 
    2019;            To have a correct caption, respecify the  extraction zone via BOXZOOM. 
    21 ;       2) a structure respecting all criterions specified by litchamp.pro.  
    22 ;          See IDL> xhelp,'litchamp'. The array contained in the structure  
    23 ;          respecting criterions of case 1)  
    24 ;   
     20;       2) a structure respecting all criterions specified by <pro>litchamp</pro> 
     21;          See IDL> xhelp,'litchamp'. The array contained in the structure 
     22;          respecting criterions of case 1) 
     23; 
    2524; PARAM:         
    2625;       MAX: valeur maximum que l''on veut prendre en compte dans le trace 
     
    3837; 
    3938; @keyword BOXZOOM 
    40 ; Vector indicating the geographic zone (3d) on which the extraction of the field must  
     39; Vector indicating the geographic zone (3d) on which the extraction of the field must 
    4140; be done to do the hovmoeller. 
    4241;  If BOXZOOM has : 
     
    4948; Where lon1, lon2,lat1,lat2,vert1,vert2 are global variables defined at the last domdef! 
    5049; 
    51 ; @keyword CONTINTERVALLE  
    52 ; When CONTOUR is activated, it is the value between 2 isolines  
    53 ; traced by a trait. So it can be different from the one specified by INTERVALLE which,  
    54 ; in this case, does not control colored isolines in color anymore. If there is noone  
    55 ; specified min, we choose a contour min which goes well with the specified interval!  
    56 ; If this keyword is not specified, we trace 20 isolines from the min to the max.  
     50; @keyword CONTINTERVALLE 
     51; When CONTOUR is activated, it is the value between 2 isolines 
     52; traced by a trait. So it can be different from the one specified by INTERVALLE which, 
     53; in this case, does not control colored isolines in color anymore. If there is noone 
     54; specified min, we choose a contour min which goes well with the specified interval! 
     55; If this keyword is not specified, we trace 20 isolines from the min to the max. 
    5756; 
    5857; @keyword CONTLABEL {type=integer} 
    5958; When CONTOUR is activated, if n 
    60 ; is different of 0, choose the label type corresponding to n cases for  
    61 ; the traced by a traitisolines. To specify the type of label of the  
     59; is different of 0, choose the label type corresponding to n cases for 
     60; the traced by a traitisolines. To specify the type of label of the 
    6261; colored contour, use LABEL 
    6362; 
    6463; @keyword CONTMAX {default=we take the max of the array passed in the keyword CONTOUR (on ocean points)} 
    65 ; When CONTOUR is activated, max value we want to consider in the isoline  
    66 ; traced by a trait's line.  
     64; When CONTOUR is activated, max value we want to consider in the isoline 
     65; traced by a trait's line. 
    6766; 
    6867; @keyword CONTMIN {default=we take the min of the array passed in the keyword CONTOUR (on ocean points)} 
    69 ; When CONTOUR is activated, min value we want to consider in the isoline  
    70 ; traced by a trait's line.  
     68; When CONTOUR is activated, min value we want to consider in the isoline 
     69; traced by a trait's line. 
    7170; 
    7271; @keyword CONTNLEVEL {default=20} 
     
    7574; CONTLABEL=0). 
    7675; 
    77 ; @keyword CONTOUR  
    78 ; If we want to trace contours of a different field than the one  
    79 ; whose we have the colored drawing (by example E-P in color and QSR in contours).  
     76; @keyword CONTOUR 
     77; If we want to trace contours of a different field than the one 
     78; whose we have the colored drawing (by example E-P in color and QSR in contours). 
    8079; It must be a field respecting same characteristics than the argument number one of pltt. 
    8180; 
    82 ; @keyword ENDPOINTS  
    83 ; keyword specifying that we want to make a vertical cut in diagonal. Then coordinated of extremities  
    84 ; of these one are defined by the 4 elements of the vector ENDPOINTS: [x1,y1,x2,y2] which are  
    85 ; coordinates.  
     81; @keyword ENDPOINTS 
     82; keyword specifying that we want to make a vertical cut in diagonal. Then coordinated of extremities 
     83; of these one are defined by the 4 elements of the vector ENDPOINTS: [x1,y1,x2,y2] which are 
     84; coordinates. 
    8685; 
    8786; @keyword EXCHANGE_XY 
    8887; Allows to invert axes. 
    89 ;  
     88; 
    9089; @keyword FILTER 
    9190; Apply a slippery average of width FILTER 
    92 ;  
    93 ; @keyword INTERVALLE  
    94 ; Value of an internal between to isoline. If there is none specified min,  
    95 ; we choose a min contour which goes well with the specified interval!. If this keyword is not  
    96 ; specified, we trace 20 isoline from the min to the max. Comment: When CONTOUR is activated,  
    97 ; INTERVALLE only specify the interval between 2 colored isoline. To specify the interval  
     91; 
     92; @keyword INTERVALLE 
     93; Value of an internal between to isoline. If there is none specified min, 
     94; we choose a min contour which goes well with the specified interval!. If this keyword is not 
     95; specified, we trace 20 isoline from the min to the max. Comment: When CONTOUR is activated, 
     96; INTERVALLE only specify the interval between 2 colored isoline. To specify the interval 
    9897; between 2 isolines traced by a trait, use CONTINTERVALLE. 
    9998; 
    100 ; @keyword INV  
    101 ; Invert the color vector used to color the graph  
     99; @keyword INV 
     100; Invert the color vector used to color the graph 
    102101;               (without use the black, the white and the used palette) 
    103 ;  
     102; 
    104103; @keyword LABEL {type=integer} 
    105 ; If n different of 0, it choose the label's type  
    106 ; corresponding to cases n. cf label.pro 
    107 ; Comment: When CONTOUR is activated, it only specify the label's type for colored isolines.  
    108 ; For these one traced by a trait, use CONTLABEL.  
     104; If n different of 0, it choose the label's type 
     105; corresponding to cases n. cf <pro>label</pro> 
     106; Comment: When CONTOUR is activated, it only specify the label's type for colored isolines. 
     107; For these one traced by a trait, use CONTLABEL. 
    109108; 
    110109; @keyword COL1d 
    111 ; --OBSOLETE--Color number when we make a trace 1d by default, 0.It is better to use the  
     110; --OBSOLETE--Color number when we make a trace 1d by default, 0.It is better to use the 
    112111; keyword COLOR used by plot. 
    113112; 
    114 ; @keyword MAXIN  
     113; @keyword MAXIN 
    115114; to specify the max value we want to plot with a keyword instead of with the 
    116115; input parameter max. If max is defined by both, parameter and keyword, the 
    117116; keyword is retained. 
    118117; 
    119 ; @keyword MININ  
     118; @keyword MININ 
    120119; to specify the min value we want to plot with a keyword instead of with the 
    121120; input parameter min. If min is defined by both, parameter and keyword, the 
     
    131130; CONTLABEL=0). 
    132131; 
    133 ; @keyword OV1D  
     132; @keyword OV1D 
    134133; Allows to overprint a 1d curve over a precedent 1d drawing. 
    135134; 
    136 ; @keyword OVERPLOT  
    137 ; To make a plot over an other one.  
    138 ; Comment: Contrarily to the use of CONTOUR or VECTEUR, the use of this keyword  
     135; @keyword OVERPLOT 
     136; To make a plot over an other one. 
     137; Comment: Contrarily to the use of CONTOUR or VECTEUR, the use of this keyword 
    139138; does not the caption and/or the color bar. 
    140139; 
    141 ; @keyword STRICTFILL  
    142 ; Activate this keyword to that the filling of contours be  
    143 ; precisely done between the min and the max specified letting values inferior at the  
     140; @keyword STRICTFILL 
     141; Activate this keyword to that the filling of contours be 
     142; precisely done between the min and the max specified letting values inferior at the 
    144143; specified min and values superior at the specified max in white. 
    145144; 
     
    147146; Contour's style to adopt to draw isolines 
    148147; 
    149 ; @keyword STY1D  
     148; @keyword STY1D 
    150149; --OBSOLETE-- 
    151 ; Number of the style used when we make a 1d drawing. We should better use the  
    152 ; keyword LINESTYLE which is tho one of the plot. Beware, this keyword is still  
     150; Number of the style used when we make a 1d drawing. We should better use the 
     151; keyword LINESTYLE which is tho one of the plot. Beware, this keyword is still 
    153152; useful if we want to d bars instead of curves, put sty1d='bar' 
    154153; 
    155154; @keyword TREND_TYPE 
    156 ; Modify field by calling trends.pro 
     155; Modify field by calling <pro>trends</pro> 
    157156; 
    158157; @keyword TYPEIN 
    159158; allows to specify the type of hovmoller we want to do 
    160 ;             'xt','yt','zt','t'   
    161 ; with help of a keyword rather than the argument type. If the argument and the  
    162 ; keyword are specified in the same time, it is the value specified by the  
     159;             'xt','yt','zt','t' 
     160; with help of a keyword rather than the argument type. If the argument and the 
     161; keyword are specified in the same time, it is the value specified by the 
    163162; keyword which is retained. 
    164163; 
    165164; @keyword _EXTRA 
    166 ; Used to pass your keywords 
     165; Used to pass keywords 
    167166; 
    168167; @uses 
    169168; common.pro 
    170169; 
    171 ; @history  
     170; @history 
    172171; Sebastien Masson (smasson\@lodyc.jussieu.fr) 
    173172;                       27/5/98 
     
    177176;                       15/1/98 
    178177; Adaptation for arrays 3 and 4d to the average be done in pltt rather than during the reading. 
    179 ;                       Sebastien Masson 14/8/98  
    180 ;                       7/1999  
     178;                       Sebastien Masson 14/8/98 
     179;                       7/1999 
    181180;                       Eric Guilyardi 29/7/99 FILTER, TREND_TYPE, 
    182 ;                       REPEAT_C  
     181;                       REPEAT_C 
    183182;                       Sebastien Masson 08/02/2000 checkfield and 
    184183;                       usetri keyword. 
    185 ;  
    186 ; @version  
     184; 
     185; @version 
    187186; $Id$ 
    188187; 
    189188; @todo seb: L.24 à 36, L.426 à 427, L. 492 à 493 
    190189;- 
    191 ;------------------------------------------------------------ 
    192 ;------------------------------------------------------------ 
    193 ;------------------------------------------------------------ 
     190; 
    194191pro pltt,tab,giventype,givenmin,givenmax,datmin,datmax,BOXZOOM = boxzoom, CONTOUR=contour $ 
    195192         ,ENDPOINTS=endpoints,INTERVALLE=intervalle,INV=inv  $ 
     
    203200         , EXCHANGE_XY = exchange_xy $ 
    204201         , _extra = ex 
    205 ;--------------------------------------------------------- 
    206 ; include common 
    207202; 
    208203  compile_opt idl2, strictarrsubs 
     
    237232   if n_elements(minin) NE 0 then min = minin 
    238233   if n_elements(maxin) NE 0 then max = maxin 
    239    if keyword_set(typein) then BEGIN  
     234   if keyword_set(typein) then BEGIN 
    240235      if size(type, /type) NE 7 AND size(type, /type) NE 0 then begin 
    241236         if n_elements(min) NE 0 then max = min 
     
    251246      section, tab, z2d, glam, gphi, ENDPOINTS = endpoints, TYPE = type $ 
    252247        , BOXZOOM = boxzoom, DIREC = direc 
    253       nx = n_elements(glam)  
     248      nx = n_elements(glam) 
    254249      ny = nx 
    255250      if strupcase(vargrid) EQ 'W' then begin 
     
    260255         nz = nzt 
    261256      ENDELSE 
    262    ENDIF ELSE BEGIN  
     257   ENDIF ELSE BEGIN 
    263258      z2d = checkfield(tab, 'pltt', TYPE = type, BOXZOOM = boxzoom $ 
    264259                       , direc = direc, _extra = ex) 
    265       if z2d[0] EQ -1 then BEGIN  
     260      if z2d[0] EQ -1 then BEGIN 
    266261        IF keyword_set(savedbox) THEN restoreboxparam, 'boxparam4pltt.dat' 
    267262        return 
     
    278273 
    279274;--------------------------------------------------------------- 
    280 ; Filtering of fields in the 't' case.  
    281 ;--------------------------------------------------------------- 
    282  
    283    IF type EQ 't' AND keyword_set(filter) THEN BEGIN  
     275; Filtering of fields in the 't' case. 
     276;--------------------------------------------------------------- 
     277 
     278   IF type EQ 't' AND keyword_set(filter) THEN BEGIN 
    284279      print, '    Applying a running mean filter of width '+string(filter, format = '(I3)') 
    285280      z2d = smooth(z2d, filter) 
    286281      z2d[0:filter/2-1] = 0. 
    287282      z2d[(size(z2d))[1]-filter/2-1:(size(z2d))[1]-1] = 0. 
    288    ENDIF  
     283   ENDIF 
    289284 
    290285;--------------------------------------------------------------- 
     
    302297            z2d = z2d[*]#replicate(1, repeat_c) 
    303298            z2d = reform(z2d, taille[1], taille[2]*repeat_c, /over) 
    304          END  
    305          ELSE:  
     299         END 
     300         ELSE: 
    306301      ENDCASE 
    307302      temps = [temps, (lindgen(jpt*(REPEAT_c-1))+1)*(temps[1]-temps[0])+temps[jpt-1]] 
    308    ENDIF  
    309  
    310 ;--------------------------------------------------------------- 
    311 ; Selection of graphic's type.  
     303   ENDIF 
     304 
     305;--------------------------------------------------------------- 
     306; Selection of graphic's type. 
    312307;--------------------------------------------------------------- 
    313308   taille=size(z2d) 
     
    332327      end 
    333328  endcase 
    334 ; We build the mask. For that, the table must be masked (automaticaly done at the  
     329; We build the mask. For that, the table must be masked (automaticaly done at the 
    335330; value valmask if we pass in moyenne or grossemoyenne) 
    336331   nan = total(finite(z2d,/nan)) < 1 
     
    365360;----------------------------------------------------------------------------- 
    366361; definition of the abscisse and ordinate vectors. 
    367 ; The triangulation is defined in order to the drawing be done from the  
    368 ; left bottom to the right up. So the matrix have to be shown like this,  
     362; The triangulation is defined in order to the drawing be done from the 
     363; left bottom to the right up. So the matrix have to be shown like this, 
    369364; from which some transpose and reverse 
    370365;----------------------------------------------------------------------------- 
     
    401396            end 
    402397            type eq 'yt' : begin 
    403                IF (size(gphi))[0] EQ 1 then yy = gphi ELSE BEGIN  
    404                  IF keyword_set(key_irregular) THEN BEGIN  
     398               IF (size(gphi))[0] EQ 1 then yy = gphi ELSE BEGIN 
     399                 IF keyword_set(key_irregular) THEN BEGIN 
    405400                   cln = (where(gphi EQ max(gphi)))[0] 
    406401                   yy = reform(gphi[cln MOD nx, *]) 
     
    422417   endcase 
    423418;-------------------------------------------------------------- 
    424    if NOT keyword_set(overplot) THEN axe, type, tempsmin, tempsmax, _EXTRA = ex ELSE BEGIN  
    425       if type EQ 'xt' then BEGIN  
    426          !y.range=!y.range-tempsmin  
     419   if NOT keyword_set(overplot) THEN axe, type, tempsmin, tempsmax, _EXTRA = ex ELSE BEGIN 
     420      if type EQ 'xt' then BEGIN 
     421         !y.range=!y.range-tempsmin 
    427422         !y.tickv=!y.tickv-tempsmin 
    428       ENDIF ELSE BEGIN  
     423      ENDIF ELSE BEGIN 
    429424         !x.range=!x.range-tempsmin 
    430425         !x.tickv=!x.tickv-tempsmin 
     
    469464                                  , coindescend = coindescendmask) 
    470465        usetri = 1 
    471       ENDIF ELSE triangulation = -1  
     466      ENDIF ELSE triangulation = -1 
    472467      IF size(gdep, /n_dimensions) EQ 2 THEN BEGIN 
    473468        usetri = 2 
     
    475470           triangulation = triangule(mask, /basic, coinmonte = coinmontemask $ 
    476471                                     , coindescend = coindescendmask) 
    477       ENDIF   
     472      ENDIF 
    478473;---------------------------------------------------------------------- 
    479474      pltbase, z2d, xx, yy, mask, xx, yy, level_z2d, colnumb, contour = contour, /noerase $ 
     
    488483      endif 
    489484;------------------------------------------------------------ 
    490       if keyword_set(contour) then BEGIN  
     485      if keyword_set(contour) then BEGIN 
    491486         pourlegende = [1, 1, 1, 1] 
    492487         oldattributs = saveatt() 
     
    506501      IF key_onearth THEN BEGIN 
    507502        CASE type OF 
    508           'xt':oplot, [180, 180] - 360*(!x.range[1] LT 180), !y.range  
     503          'xt':oplot, [180, 180] - 360*(!x.range[1] LT 180), !y.range 
    509504          'yt':oplot, !x.range, [0, 0] 
    510505          ELSE: 
     
    523518; the top (right) axis by hand using axis. 
    524519; 
    525       if n_elements(ex) NE 0 then BEGIN  
     520      if n_elements(ex) NE 0 then BEGIN 
    526521; pour avoir un cadre de la couleur noire 
    527522        if (where(tag_names(ex) EQ 'COLOR'))[0] NE -1 then ex.COLOR = 0 
     
    533528; call axis for the missing axis. 
    534529      IF type EQ 'xt' AND NOT keyword_set(endpoints) THEN BEGIN 
    535         if n_elements(ex) NE 0 then $  
     530        if n_elements(ex) NE 0 then $ 
    536531          if (where(tag_names(ex) EQ 'YTICKNAME'))[0] NE -1 then $ 
    537532          ex.YTICKNAME = replicate(' ', n_elements(ex.YTICKNAME)) 
     
    540535      ENDIF 
    541536      IF (type EQ 'yt' OR type EQ 'zt') AND NOT keyword_set(endpoints) THEN BEGIN 
    542         if n_elements(ex) NE 0 then $  
     537        if n_elements(ex) NE 0 then $ 
    543538          if (where(tag_names(ex) EQ 'XTICKNAME'))[0] NE -1 then $ 
    544539          ex.XTICKNAME = replicate(' ', n_elements(ex.XTICKNAME)) 
     
    564559      if keyword_set(sty1d) then BEGIN ;if we want to make bars 
    565560         IF strlowcase(strtrim(sty1d)) EQ 'bar' then begin 
    566             !y.range = [!y.range[0]-(!y.range[1]-!y.range[0])*.05,!y.range[1]]  
     561            !y.range = [!y.range[0]-(!y.range[1]-!y.range[0])*.05,!y.range[1]] 
    567562            bar_plot, yy, background = (!d.n_colors-1) < 255,  $ 
    568563             baselines = replicate(!y.range[0], n_elements(yy)), barnames = ['', ''], $ 
    569564             colors    = replicate(col1d, n_elements(yy)), /outline 
    570             if n_elements(ex) NE 0 then BEGIN  
     565            if n_elements(ex) NE 0 then BEGIN 
    571566; To have a black frame 
    572567              if (where(tag_names(ex) EQ 'COLOR'))[0] NE -1 then ex.COLOR = 0 
     
    574569            plot, [0], [0], /nodata, /noerase, _extra = ex 
    575570            GOTO, fini 
    576          ENDIF  
     571         ENDIF 
    577572      ENDIF 
    578       if NOT keyword_set(ov1d) then BEGIN  
     573      if NOT keyword_set(ov1d) then BEGIN 
    579574         !y.range=[min-abs(max-min)/50.,max+abs(max-min)/50.] 
    580575         legende,mi,ma,type, DIREC = direc, _extra = ex 
     
    596591; use xstyle=1 then each axis (up and down) have majorticks with a 
    597592; length of 1 (-> not very nice when xgridstyle=2), same if 
    598 ; xticklen=0.5 (not very nice in the middle).  
     593; xticklen=0.5 (not very nice in the middle). 
    599594; => so we draw the top axis by hand using axis. 
    600          if n_elements(ex) NE 0 then BEGIN  
     595         if n_elements(ex) NE 0 then BEGIN 
    601596; To have a black frame 
    602597            if (where(tag_names(ex) EQ 'COLOR'))[0] NE -1 then ex.COLOR = 0 
     
    606601           , ystyle = 1+8*keyword_set(exchange_xy), _extra = ex 
    607602; call axis for the missing axis. 
    608          if n_elements(ex) NE 0 then BEGIN  
     603         if n_elements(ex) NE 0 then BEGIN 
    609604; force tickname to blank array 
    610605            if (where(tag_names(ex) EQ 'YTICKNAME'))[0] NE -1 AND keyword_set(exchange_xy) then ex.YTICKNAME = replicate(' ', n_elements(ex.YTICKNAME)) 
     
    619614fini: 
    620615;------------------------------------------------------------ 
    621 ; we reput time axis in IDL julian days and not in julian days count from tempsmin  
    622 ;------------------------------------------------------------ 
    623    if type EQ 'xt' then BEGIN  
    624       !y.range=!y.range+tempsmin  
     616; we reput time axis in IDL julian days and not in julian days count from tempsmin 
     617;------------------------------------------------------------ 
     618   if type EQ 'xt' then BEGIN 
     619      !y.range=!y.range+tempsmin 
    625620      !y.tickv=!y.tickv+tempsmin 
    626    ENDIF ELSE BEGIN  
     621   ENDIF ELSE BEGIN 
    627622      !x.range=!x.range+tempsmin 
    628623      !x.tickv=!x.tickv+tempsmin 
     
    640635;------------------------------------------------------------ 
    641636   if n_elements(key_performance) NE 0 then $ 
    642     IF key_performance EQ 1 THEN print, 'temps pltt', systime(1)-tempsun  
     637    IF key_performance EQ 1 THEN print, 'temps pltt', systime(1)-tempsun 
    643638;------------------------------------------------------------ 
    644639;------------------------------------------------------------ 
     
    646641   return 
    647642end 
    648  
    649  
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/pltv.pro

    r181 r231  
    1 ;------------------------------------------------------------ 
    21;+ 
     2; 
    33; @file_comments 
    44; Draw 2d plots with TV procedure 
     
    77; graphic 
    88; 
    9 ; @param DATA {in}{required}  
     9; @param DATA {in}{required} 
    1010; The field we want to display can be: 
    1111;    1) an array. If the array is not a 2D array, its mean along 
     
    1313;       (as it is done in plt). 
    1414;    2) a structure respecting all criterions specified by 
    15 ;       litchamp.pro. cf. IDL> xhelp,'litchamp' 
     15;       <pro>litchamp</pro> cf. IDL> xhelp,'litchamp' 
    1616; 
    17 ; @param MIN {in}{optional}{default=min of DATA (on non-masked points)}  
     17; @param MIN {in}{optional}{default=min of DATA (on non-masked points)} 
    1818; 
    19 ; @param MAX {in}{optional}{default=max of DATA (on non-masked points)}  
     19; @param MAX {in}{optional}{default=max of DATA (on non-masked points)} 
    2020; 
    2121; @keyword BOTTOM {default=0} 
    2222; The lowest color index of the colors to be used 
    2323; 
    24 ; @keyword BOXZOOM  
    25 ; Vector indicating the geographic zone on which we want to cut the map.  
     24; @keyword BOXZOOM 
     25; Vector indicating the geographic zone on which we want to cut the map. 
    2626;  If BOXZOOM has : 
    2727; 1 element : The extraction is made on [lon1, lon2, lat1, lat2, 0.,boxzoom[0]] 
     
    5454; 
    5555; @keyword _EXTRA 
    56 ; used to pass keywords to PLACEDESSIN, TV, AXE, LEGENDE, BARRECOULEUR, TERMINEDESSIN 
    57 ;  
     56; Used to pass keywords to <pro>PLACEDESSIN</pro>, <pro>TV</pro>, <pro>AXE</pro>, <pro>LEGENDE</pro>, <pro>BARRECOULEUR</pro>, <pro>TERMINEDESSIN</pro> 
     57; 
    5858; @examples 
    5959; IDL> tvplus, dist(100) 
     
    6666; 
    6767;- 
    68 ;-------------------------------------------------------------- 
    69  
     68; 
    7069PRO pltv, data, min, max, BOTTOM = bottom, BOXZOOM = boxzoom $ 
    7170          , C_MASK = c_mask, C_NAN = c_nan, MININ = minin, MAXIN = maxin $ 
     
    8281; I2) Reading of the field and checkup. 
    8382;-------------------------------------------------------------- 
    84   IF n_elements(minin) NE 0 THEN min = minin  
     83  IF n_elements(minin) NE 0 THEN min = minin 
    8584  IF n_elements(maxin) NE 0 THEN max = maxin 
    8685  IF size(data, /type) NE 8 THEN z2d = reform(float(data)) ELSE z2d = data 
     
    9089      saveboxparam, 'boxparam4pltv.dat' 
    9190    ENDIF 
    92     z2d = checkfield(temporary(z2d), 'plt', TYPE = 'xy', direc = direc, BOXZOOM = boxzoom)  
    93     if z2d[0] EQ -1 then BEGIN  
     91    z2d = checkfield(temporary(z2d), 'plt', TYPE = 'xy', direc = direc, BOXZOOM = boxzoom) 
     92    if z2d[0] EQ -1 then BEGIN 
    9493      IF keyword_set(savedbox) THEN restoreboxparam, 'boxparam4pltv.dat' 
    9594      return 
     
    114113;------------------------------------------------------------ 
    115114  IF n_elements(maskval) EQ 0 THEN maskval = 1.e20 
    116   IF abs(maskval) LT 1e6 THEN BEGIN  
     115  IF abs(maskval) LT 1e6 THEN BEGIN 
    117116    IF keyword_set(nan) THEN z2d[nanind] = 1.e20 
    118     msk = z2d NE maskval  
    119   ENDIF ELSE BEGIN  
     117    msk = z2d NE maskval 
     118  ENDIF ELSE BEGIN 
    120119    IF keyword_set(nan) THEN z2d[nanind] = 0 
    121120    msk = abs(z2d) LT abs(maskval)/10. 
     
    129128  z2d = min > temporary(z2d) < max 
    130129;------------------------------------------------------------ 
    131 ; apply other keywords (nointerp, c_nan, c_mask)  
     130; apply other keywords (nointerp, c_nan, c_mask) 
    132131;------------------------------------------------------------ 
    133132  IF NOT keyword_set(nointerp) THEN BEGIN 
     
    137136    z2d = m * temporary(z2d) + p 
    138137  ENDIF 
    139 ; set c_nan for NaN values  
     138; set c_nan for NaN values 
    140139  IF keyword_set(nan) THEN BEGIN 
    141140    IF n_elements(c_nan) NE 0 THEN cnan = 0 > c_nan < (ncolmax -1) ELSE cnan = (ncolmax -1) 
     
    143142  ENDIF 
    144143; c_mask for masked values 
    145   IF keyword_set(masked) THEN BEGIN    
     144  IF keyword_set(masked) THEN BEGIN 
    146145    IF n_elements(c_mask) NE 0 THEN cmask = 0 > c_mask < (ncolmax - 1) ELSE cmask = (ncolmax -1) 
    147146    z2d[maskind] = cmask 
    148   ENDIF  
    149   z2d = round(temporary(z2d))  
     147  ENDIF 
     148  z2d = round(temporary(z2d)) 
    150149; use byte type to save memory 
    151150  z2d = byte(temporary(z2d)) 
     
    161160   xsize = !p.position[2] - !p.position[0] 
    162161   ysize = !p.position[3] - !p.position[1] 
    163    IF !d.name EQ 'X' THEN BEGIN  
     162   IF !d.name EQ 'X' THEN BEGIN 
    164163     xsize = ceil(xsize * !d.x_size) 
    165164     ysize = ceil(ysize * !d.y_size) 
    166165     z2d = congrid(z2d, xsize, ysize) 
    167166   ENDIF 
    168     
     167 
    169168   tv, z2d, !p.position[0], !p.position[1] $ 
    170169       , xsize = xsize, ysize = ysize $ 
     
    185184;------------------------------------------------------------ 
    186185   barrecouleur, 0, min,  max, 10, bottom = bottom, position = posbar, ncolors = (topcol-bottom+1), _extra = ex 
    187 ; 4) End of drawing  
    188    terminedessin, _extra=ex  
     186; 4) End of drawing 
     187   terminedessin, _extra=ex 
    189188; 
    190189  if keyword_set(savedbox) THEN restoreboxparam, 'boxparam4pltv.dat' 
    191   if keyword_set(key_performance) NE 0 THEN print, 'time pltv', systime(1)-tempsun  
     190  if keyword_set(key_performance) NE 0 THEN print, 'time pltv', systime(1)-tempsun 
    192191; 
    193192   return 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/pltz.pro

    r226 r231  
    1 ;------------------------------------------------------------ 
    2 ;------------------------------------------------------------ 
    3 ;------------------------------------------------------------ 
    41;+ 
    52; 
     
    1512;         If the field is 2d, indicate, with the keyword BOXZOOM, geographic delineations of the boxzoom. 
    1613;         If the field is 3d, we extract the section on we average possibly before to do the plot. 
    17 ;         2)  a structure respecting all criterions specified by litchamp.pro. 
     14;         2)  a structure respecting all criterions specified by <pro>litchamp</pro>. 
    1815;          See IDL> xhelp,'litchamp'. The array contained in the structure must be 2 or 3d (See case 1) 
    1916; 
     
    8986; 
    9087; @keyword LABEL {default=0}{type=integer} 
    91 ; It choose the label's type corresponding to cases in label.pro. 
     88; It choose the label's type corresponding to cases in <pro>label</pro> 
    9289; Comment: When CONTOUR is activated, it only specify the label's type for colored isolines. 
    9390; For these one traced by a trait, use CONTLABEL. 
     
    159156; 
    160157;- 
    161 ;------------------------------------------------------------ 
    162 ;------------------------------------------------------------ 
    163 ;------------------------------------------------------------ 
    164 pro pltz, tab, giventype, givenmin, givenmax, BOXZOOM = boxzoom, CONTOUR = contour $ 
     158; 
     159PRO pltz, tab, giventype, givenmin, givenmax, BOXZOOM = boxzoom, CONTOUR = contour $ 
    165160          , ENDPOINTS = endpoints, INTERVALLE = intervalle, INV = inv, ZRATIO = zratio $ 
    166161          , CONTINTERVALLE = contintervalle, LABEL = label, CONTLABEL = contlabel $ 
     
    172167          , WDEPTH = wdepth, REALSECTION = realsection $ 
    173168          , _EXTRA = ex 
    174 ;--------------------------------------------------------- 
    175 ; include common 
    176169; 
    177170  compile_opt idl2, strictarrsubs 
     
    483476  return 
    484477end 
    485  
    486  
    487  
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/sbar_plot.pro

    r163 r231  
    1 ;------------------------------------------------------------ 
    2 ;------------------------------------------------------------ 
    3 ;------------------------------------------------------------ 
    41;+ 
    52; 
    6 ; @file_comments  
     3; @file_comments 
    74; Same thing that bar_plot but compatible with the whole environment (common.pro included) 
    85; 
     
    1613; 
    1714; @keyword COLORS {type=integer} 
    18 ; I gives color of all colorbars. (contrarily to colors  
     15; I gives color of all colorbars. (contrarily to colors 
    1916; which is a vector giving the color of each colorbar). 
    2017; 
    2118; @keyword NOREINITPLT 
    22 ; We active it if we do not want environment variables !p, !x, !y, !z  
     19; We active it if we do not want environment variables !p, !x, !y, !z 
    2320; to be reinitializated by the procedure reinitplt 
    2421; 
    2522; @keyword _EXTRA 
    26 ; used to pass your keyword 
     23; Used to pass keyword 
    2724; 
    2825; @uses 
    2926; common.pro 
    3027; 
    31 ; @restrictions  
    32 ; If NOREINITPLT is not activated, all environment  
     28; @restrictions 
     29; If NOREINITPLT is not activated, all environment 
    3330; variables !p, !x, !y, !z are reinitializted by the procedure reinitplt 
    3431; 
     
    4643; 
    4744;- 
    48 ;------------------------------------------------------------ 
    49 ;------------------------------------------------------------ 
    50 ;------------------------------------------------------------ 
    51  
    52 PRO sbar_plot, Values, COLORS = colors, NOREINITPLT = noreinitplt, _extra = ex  
     45; 
     46PRO sbar_plot, Values, COLORS = colors, NOREINITPLT = noreinitplt, _extra = ex 
    5347; 
    5448  compile_opt idl2, strictarrsubs 
    5549; 
    5650@common 
    57 ; 1) I reinitialize the graphic environment (variables !x, !y et !p):  
    58    if NOT keyword_set(NOREINITPLT) then reinitplt, _extra = ex  
    59 ; 2) I place the drawing on the screen like on the postscript  
     51; 1) I reinitialize the graphic environment (variables !x, !y et !p): 
     52   if NOT keyword_set(NOREINITPLT) then reinitplt, _extra = ex 
     53; 2) I place the drawing on the screen like on the postscript 
    6054   IF chkstru(ex, 'overplot')EQ 0 THEN placedessin, 'autre', _extra = ex 
    61 ; 3) Drawing  
     55; 3) Drawing 
    6256   if n_elements(COLORS) NE 0 then BEGIN 
    6357      if n_elements(COLORS) EQ n_elements(Values) then col = colors $ 
     
    6761   bar_plot, Values, background = !p.background, colors = col $ 
    6862             , xstyle = 1, ystyle = 1, _extra = ex 
    69 ; 4) End of drawing  
    70    terminedessin, _extra=ex  
     63; 4) End of drawing 
     64   terminedessin, _extra=ex 
    7165 
    7266   return 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/scontour.pro

    r226 r231  
    1 ;------------------------------------------------------------ 
    2 ;------------------------------------------------------------ 
    3 ;------------------------------------------------------------ 
    41;+ 
    52; 
     
    1512; 
    1613; @keyword _EXTRA 
    17 ; used to pass your keywords 
     14; Used to pass keywords 
    1815; 
    1916; @uses 
     
    3330; 
    3431;- 
    35 ;------------------------------------------------------------ 
    36 ;------------------------------------------------------------ 
    37 ;------------------------------------------------------------ 
     32; 
    3833PRO scontour, x, y, z, NOREINITPLT = noreinitplt, _EXTRA = ex 
    3934; 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/splot.pro

    r226 r231  
    1 ;------------------------------------------------------------ 
    2 ;------------------------------------------------------------ 
    3 ;------------------------------------------------------------ 
    41;+ 
    52; 
     
    1512; 
    1613; @keyword _EXTRA 
    17 ; used to pass your keywords 
     14; Used to pass keywords 
    1815; 
    1916; @uses 
     
    3734; 
    3835;- 
    39 ;------------------------------------------------------------ 
    40 ;------------------------------------------------------------ 
    41 ;------------------------------------------------------------ 
     36; 
    4237PRO splot, x, y, NOREINITPLT = noreinitplt, _EXTRA = ex 
    4338; 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/tvplus.pro

    r226 r231  
    1 ;------------------------------------------------------------ 
    2 ;------------------------------------------------------------ 
    3 ;------------------------------------------------------------ 
    41;+ 
    52; 
     
    74; Enhanced version of tvscl 
    85; 
    9 ; @categories quick exploration of 2D arrays 
     6; @categories 
     7; quick exploration of 2D arrays 
    108; 
    119; @param Z2D {in}{required} 
     
    6462; 
    6563; @keyword _EXTRA 
    66 ; used to pass keywords to TV, PLOT, COLORBAR 
     64; Used to pass keywords to <pro>TV</pro>, <pro>PLOT</pro>, <pro>COLORBAR</pro> 
    6765; 
    6866; @restrictions 
     
    8785; 
    8886;- 
    89 ;------------------------------------------------------------ 
    90 ;------------------------------------------------------------ 
    91 ;------------------------------------------------------------ 
     87; 
    9288PRO tvplus, z2d, cellsize, BOTTOM = bottom, C_MASK = c_mask, C_NAN = c_nan, WINDOW = window $ 
    9389            , MIN = min, MAX = max, MASK = mask, OFFSET = offset, NOUSEINFOS = NOUSEINFOS $ 
    9490            , NCOLORS = ncolors, NOINTERP = nointerp, _EXTRA = ex 
    95 ; 
    9691; 
    9792  compile_opt idl2, strictarrsubs 
Note: See TracChangeset for help on using the changeset viewer.