source: trunk/PLOTS/LABEL/label.pro @ 2

Last change on this file since 2 was 2, checked in by opalod, 22 years ago

Initial revision

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 3.6 KB
Line 
1;------------------------------------------------------------
2;------------------------------------------------------------
3;------------------------------------------------------------
4;+
5; NAME:label
6;
7; PURPOSE:permet de choisir le stype de label que l'on veut utiliser
8; lors d'un contour
9;
10; CATEGORY:graphique
11;
12; CALLING SEQUENCE:pro label,cas,min,max,ncontour,level_z2d
13;
14; INPUTS:
15;       cas=numero du type de label que l'on veut tracer
16;       min et max = valeures min et max entre lesquelles on veut faire
17; des contours
18;
19; KEYWORD PARAMETERS:
20;
21;       INTERVALLE: valeur d'un intervalle entre deux isolignes. par defaut
22; est calcule pour tracer 20 isolighnes. Dans tous les cas ce not cle
23; doit etre retourne pour pouvoir avoir une belle legende. Si les
24; niveaux ne comportent pas d''intevalle regulier, le mettre a -1
25;
26;       NLEVEL: nombre de contours a dessiner. par defaut =20. actif si
27; LABEL=0 ou nest pas specifie.
28;
29; OUTPUTS:
30;       ncontour=nombre de contour a tracer
31;       level_z2d=vecteur contenant les valeurs des contours que l'on trace
32; (rq couleur est definit ds le common:
33;       c'est un vecteur contenant le numero des couleurs qui serviront a
34;               remplir entre les contours)
35;
36; COMMON BLOCKS:
37;       common.pro
38;
39; SIDE EFFECTS:
40;
41; RESTRICTIONS:
42;
43; EXAMPLE:
44;
45; MODIFICATION HISTORY: Sebastien Masson (smasson@lodyc.jussieu.fr)
46;                       7/5/98
47;-
48;------------------------------------------------------------
49;------------------------------------------------------------
50;------------------------------------------------------------
51pro label,cas,min,max,ncontour,level_z2d,NLEVEL=nlevel $
52          ,INTERVALLE=intervalle, STRICTFILL = strictfill
53@common
54   if !d.name EQ 'PS' OR !d.name EQ 'Z' then BEGIN
55      old_dname = !d.name
56      thisOS = !VERSION.OS_FAMILY
57      thisOS = STRMID(thisOS, 0, 3)
58      thisOS = STRUPCASE(thisOS)
59      CASE thisOS of
60         'MAC': SET_PLOT, thisOS
61         'WIN': SET_PLOT, thisOS
62         ELSE: SET_PLOT, 'X'
63      ENDCASE
64      !p.BACKGROUND=(!d.n_colors-1) < 255
65      !p.color=0
66      if !d.n_colors gt 256 then !p.background='ffffff'x
67      ncoul = !D.n_Colors < 256
68      set_plot,old_dname
69   ENDIF ELSE ncoul = !D.n_Colors < 256
70   case cas of
71      0: begin
72;nlevel label entre le min et le max
73         if keyword_set(Nlevel) eq 0 then ncontour=20 else ncontour=nlevel
74         ncontour = 1 > ncontour
75         level_z2d  = min + (max-min)*(findgen(Ncontour)/Ncontour)
76         couleur    = ncoul*(findgen(Ncontour))/Ncontour+ncoul/(2*ncontour)
77         intervalle = level_z2d[1]-level_z2d[0]
78      end
79      1: begin
80;un certain nombre de label en partant du min jusqu'au plus pres de max avec
81; un pas fixe par intervalle
82         ncontour  = fix((max-min)/intervalle)
83         ncontour = 1 > ncontour
84         level_z2d = min + intervalle*findgen(Ncontour)
85         couleur   = ncoul*(findgen(Ncontour))/Ncontour+ncoul/(2*ncontour)
86         max=level_z2d(Ncontour-1)+intervalle
87      end
88; label pour faire les memes sss que dessier
89
90      2: begin
91         lct, 63, file = 'palette.tbl'
92         level_z2d  = [20, 25, 30, 31, 32, 33, 33.5, 34+.25*findgen(16)]
93         ncontour=23
94         couleur    = findgen(23)+1
95         masx = 37.75
96         intervalle = -1
97         return
98      end
99      3: begin
100; lecture intervalles + palette dans fichier GMT
101
102         label_gmt, min, max, intervalle, ncoul, ncontour, level_z2d, couleur
103
104      end
105      else: begin
106         ras = report('Le numero de label demande n''existe pas', /error)
107      end
108   ENDCASE
109   if keyword_set(strictfill) then begin
110      ncontour = ncontour+1
111      level_z2d = [level_z2d, max]
112      couleur = [couleur, ncoul-1]
113   endif
114   return
115end
Note: See TracBrowser for help on using the repository browser.