Subversion Repositories wimsdev

Rev

Rev 9339 | Rev 11418 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9339 Rev 11400
Line 2... Line 2...
2
!goto proc
2
!goto proc
3
!endif
3
!endif
4
 
4
 
5
slib_author=Adeline, Grelot ; Bernadette, Perrin-Riou; Sophie, Lemaire
5
slib_author=Adeline, Grelot ; Bernadette, Perrin-Riou; Sophie, Lemaire
6
 
6
 
7
slib_example= [10,5,2,3,10,13],[3,4,6,7,12,14,16],xtics [A1,A3,A6,8,10,12,14],ytics 10, color salmon,html\
7
slib_example= [10,5,2,3,10,13],[3,4,6,7,12,14,16],xtics [A1,A3,A6,8,10,12,14],ytics 10,color salmon,html\
8
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics [a,b,c,d,e,f],ytics 10, color salmon,html\
8
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics [a,b,c,d,e,f],ytics 10,color salmon,html\
9
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics,ytics 15, color blue,html\
9
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics,ytics 15,color blue,html\
10
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics [a,b,c,d,e,f],ytics 15, color blue,html\
10
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics [a,b,c,d,e,f],ytics 15,color blue,html\
11
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics 5,ytics 10,color blue,html\
11
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics 5,ytics 10,color blue,html\
12
[100,500,2,300,1000,1300],[3,4,6,7,12,14],xtics,ytics 10, baton,color green,html\
12
[100,500,2,300,1000,1300],[3,4,6,7,12,14],xtics,ytics 10,baton,color green,html\
13
[0.007,0.005,0.002,0.003,0.0020,0.01],[3,4,6,7,12,14],xtics,ytics 10, stem,color blue,html\
13
[0.007,0.005,0.002,0.003,0.0020,0.01],[3,4,6,7,12,14],xtics,ytics 10,stem,color blue,html\
14
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics,ytics 10, step,color red,html\
14
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics,ytics 10,step,color red,html\
15
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics [a,b,c,d,e,f],ytics 10,step, color red,html\
15
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics [a,b,c,d,e,f],ytics 10,step,color red,html\
16
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics 5,ytics 10,step,color red,html\
16
[1,5,2,3,10,13],[3,4,6,7,12,14,22],xtics 5,ytics 10,step,color red,html\
17
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics [a,b,c,d,e,f],ytics 10, stem,color blue,html\
17
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics [a,b,c,d,e,f],ytics 10,stem,color blue,html\
18
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics 5,ytics 1,stem,color blue,html\
18
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics 5,ytics 1,stem,color blue,html\
19
[1,5,2,3,10,13],[3,4,6,7,12,14,14],xtics,ytics,stair,color blue,html\
19
[1,5,2,3,10,13],[3,4,6,7,12,14,14],xtics,ytics,stair,color blue,html\
20
[1,5,2],[3,4,6],xtics,ytics, stem,color blue,
20
[1,5,2],[3,4,6],xtics 10,ytics,stem,color blue,\
21
 
-
 
22
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics [a,b,c,d,e,f,g],ytics 10, baton,color green,html
21
[1,5,2,3,10,13],[3,4,6,7,12,14],xtics 5,noytics,baton,color green,html
23
 
22
 
24
!exit
23
!exit
25
 
24
 
26
:proc
25
:proc
27
 
26
 
28
slib_parm=
27
slib_parm=
29
slib_out=
28
slib_out=
30
!reset slib_optx, slib_opty, slib_couleur,slib_baton,slib_pdata, slib_grad,slib_listx,slib_listxx, slib_param, slib_parm slib_option, slib_points
29
!reset slib_optx, slib_opty, slib_couleur,slib_baton,slib_pdata, slib_grad,slib_listx,slib_listxx, slib_param, slib_parm slib_option, slib_points
31
 
30
 
32
slib_data=!item 1 to 2  of $wims_read_parm
31
slib_data=!item 1 to 2 of $wims_read_parm
33
slib_parm= !item 3 to -1 of $wims_read_parm
32
slib_parm= !item 3 to -1 of $wims_read_parm
34
 
33
 
35
!readproc slib/stat/dataproc $slib_data
34
!readproc slib/stat/dataproc $slib_data
36
!!! slib_x, slib_y comes from slib/stat/dataproc
35
!!! slib_x, slib_y comes from slib/stat/dataproc
37
slib_u= $slib_x
36
slib_u= $slib_x
Line 60... Line 59...
60
!for slib_i=1 to $slib_ocnt
59
!for slib_i=1 to $slib_ocnt
61
  slib_param=!item $slib_i of $slib_parm
60
  slib_param=!item $slib_i of $slib_parm
62
  slib_param=!words2items  $slib_param
61
  slib_param=!words2items  $slib_param
63
  !if xtics isitemof $slib_param
62
  !if xtics isitemof $slib_param
64
    slib_optx=1
63
    slib_optx=1
65
    slib_param=!replace xtics by $  in $slib_param
64
    slib_param=!replace internal xtics by $  in $slib_param
-
 
65
    slib_param=!replace internal = by $  in $slib_param
66
    slib_param=!nonempty item $slib_param
66
    slib_param=!nonempty item $slib_param
67
    slib_param=!nospace $slib_param
67
    slib_param=!nospace $slib_param
68
    slib_param=!declosing $slib_param
68
    slib_param=!declosing $slib_param
69
    slib_cnt_ticx=!nonempty item $slib_param
69
    slib_cnt_ticx=!nonempty item $slib_param
70
    slib_c=!itemcnt $slib_cnt_ticx
70
    slib_c=!itemcnt $slib_cnt_ticx
71
 
71
 
72
    !if $slib_c=1
72
    !if $slib_c=1
73
      slib_arrondi=$[ceil(($slib_x2-$slib_x1)/$slib_cnt_ticx)]
73
     slib_arrondi=!exec pari (f(r,n)= l=if(r != 0, floor(log(abs(r))/log(10)),1) ; s =ceil(10^(-l+n-1)*r) ; s*10^(l-n+1) ); \
74
      slib_cnt_arr=0
-
 
75
        !if $slib_arrondi<1
-
 
76
          !for  slib_h=1 to 10
-
 
77
            !if $[floor($slib_arrondi)] <>0
-
 
78
            !break
-
 
79
            !else
-
 
80
              !advance slib_cnt_arr
-
 
81
              slib_arrondi=$[$slib_arrondi*10]
-
 
82
            !endif
-
 
83
          !next slib_h
-
 
84
          slib_arrondi=$[$slib_arrondi/10^($slib_cnt_arr)]
74
   f(($slib_x2-$slib_x1)/$slib_cnt_ticx,1)
85
        !else
-
 
86
          !for  slib_h=1 to 10
-
 
87
            !if $[floor($slib_arrondi)] = 0
-
 
88
              !break
-
 
89
            !else
-
 
90
              !advance slib_cnt_arr
-
 
91
              slib_arrondi=$[$slib_arrondi/10]
-
 
92
            !endif
-
 
93
          !next slib_h
-
 
94
          slib_arrondi=$[$slib_arrondi*10^($slib_cnt_arr)]
-
 
95
        !endif
-
 
96
 
-
 
97
      slib_listx=!values $[$slib_arrondi*floor($slib_x1/$slib_arrondi)]\
75
      slib_listx=!values $[$slib_arrondi*floor($slib_x1/$slib_arrondi)]\
98
        +x*$slib_arrondi for x=0 to $[$slib_cnt_ticx+1]
76
        +x*$slib_arrondi for x=0 to $[$slib_cnt_ticx+1]
99
 
-
 
100
      slib_listxx=$slib_listx
77
      slib_listxx=$slib_listx
101
    !else
78
    !else
102
      slib_listx= $slib_param
79
      slib_listx= $slib_param
103
      slib_listxx=$slib_w
80
      slib_listxx=$slib_w
104
 
-
 
105
    !endif  slib_c
81
    !endif slib_c
106
  !endif xtics
82
  !endif xtics
107
  !if ytics isitemof $slib_param
83
  !if ytics isitemof $slib_param
108
    slib_opty=1
84
    slib_opty=1
109
    slib_param=!replace ytics by $  in $slib_param
85
    slib_param=!replace ytics by $ in $slib_param
110
    slib_param=!nonempty item $slib_param
86
    slib_param=!nonempty item $slib_param
111
    slib_param=!words2items  $slib_param
87
    slib_param=!words2items $slib_param
112
    slib_param=!declosing $slib_param
88
    slib_param=!declosing $slib_param
113
    slib_param=!nonempty item $slib_param
89
    slib_param=!nonempty item $slib_param
114
    slib_pcnt=!itemcnt $slib_param
90
    slib_pcnt=!itemcnt $slib_param
115
    !if $slib_pcnt=1
91
    !if $slib_pcnt=1
116
      slib_ra=$slib_param
92
      slib_ra=$slib_param
117
    !endif
93
    !endif
118
  !endif ytics
94
  !endif ytics
119
  !if color isitemof $slib_param
95
  !if color isitemof $slib_param
120
    slib_param=!replace color by $  in $slib_param
96
    slib_param=!replace color by $ in $slib_param
121
    slib_param=!nonempty item $slib_param
97
    slib_param=!nonempty item $slib_param
122
    couleur=$slib_param
98
    couleur=$slib_param
123
  !endif
99
  !endif
124
 
100
 
125
  !if  $slib_param iswordof baton stem step stair
101
  !if $slib_param iswordof baton stem step stair
126
    slib_baton=$slib_param
102
    slib_baton=$slib_param
127
  !endif
103
  !endif
128
  !if  $slib_param iswordof html url
104
  !if $slib_param iswordof html url
129
    slib_option=$slib_param
105
    slib_option=$slib_param
130
  !endif
106
  !endif
131
!next slib_i
107
!next slib_i
132
 
108
 
133
!default slib_optx=0
109
!default slib_optx=0
Line 151... Line 127...
151
  !if $slib_baton iswordof stem
127
  !if $slib_baton iswordof stem
152
    slib_r=0
128
    slib_r=0
153
  !else
129
  !else
154
   slib_r=$[($slib_x2-$slib_x1)/(($slib_cntu)*4)]
130
   slib_r=$[($slib_x2-$slib_x1)/(($slib_cntu)*4)]
155
  !endif
131
  !endif
156
  !for slib_i = 1 to  $slib_cntu
132
  !for slib_i = 1 to $slib_cntu
157
    slib_j=!item $slib_i of $slib_w
133
    slib_j=!item $slib_i of $slib_w
158
    slib_ww=!append item $[$slib_j+1-$slib_r],$[$slib_j+1+$slib_r] to $slib_ww
134
    slib_ww=!append item $[$slib_j+1-$slib_r],$[$slib_j+1+$slib_r] to $slib_ww
159
    slib_j=!item $slib_i of $slib_u
135
    slib_j=!item $slib_i of $slib_u
160
    slib_uu=!append item $slib_j,0 to $slib_uu
136
    slib_uu=!append item $slib_j,0 to $slib_uu
161
  !next slib_i
137
  !next slib_i
Line 164... Line 140...
164
  slib_ww=$slib_w
140
  slib_ww=$slib_w
165
  slib_w=$slib_w1
141
  slib_w=$slib_w1
166
  slib_x1=!item 1 of $slib_w
142
  slib_x1=!item 1 of $slib_w
167
  slib_x2=!item -1 of $slib_w
143
  slib_x2=!item -1 of $slib_w
168
  slib_y2=!sort numeric item $slib_u
144
  slib_y2=!sort numeric item $slib_u
169
  slib_y2=!item -1  of $slib_y2
145
  slib_y2=!item -1 of $slib_y2
170
  slib_cnt=!itemcnt $slib_w
146
  slib_cnt=!itemcnt $slib_w
171
  slib_cnt=$[$slib_cnt+1]
147
  slib_cnt=$[$slib_cnt+1]
172
!else
148
!else
173
  !if $slib_baton iswordof step stair
149
  !if $slib_baton iswordof step stair
174
   slib_uu=$slib_u
150
   slib_uu=$slib_u
175
   slib_x1=!item 1 of $slib_w
151
   slib_x1=!item 1 of $slib_w
176
   slib_x2=!item -1 of $slib_w
152
   slib_x2=!item -1 of $slib_w
177
   slib_y2=!sort numeric item $slib_u
153
   slib_y2=!sort numeric item $slib_u
178
   slib_y2=!item -1  of $slib_y2
154
   slib_y2=!item -1 of $slib_y2
179
   slib_cnt=!itemcnt $slib_w
155
   slib_cnt=!itemcnt $slib_w
180
   slib_cnt=$[$slib_cnt]
156
   slib_cnt=$[$slib_cnt]
181
   !else
157
   !else
182
  slib_uu=
158
  slib_uu=
183
  !for slib_i=1 to $[$slib_cntu]
159
  !for slib_i=1 to $[$slib_cntu]
Line 246... Line 222...
246
 !endif
222
 !endif
247
 
223
 
248
!if stair notwordof $slib_baton and step notwordof $slib_baton
224
!if stair notwordof $slib_baton and step notwordof $slib_baton
249
 !for slib_i=1 to $[$slib_cnt]
225
 !for slib_i=1 to $[$slib_cnt]
250
   slib_inf=!item $slib_i of $slib_w
226
   slib_inf=!item $slib_i of $slib_w
251
   slib_sup=!item $[$slib_i+1] of $slib_w
227
   slib_sup=!item $[$slib_i+1] of $slib_w
252
   slib_f=!item $slib_i of $slib_uu
228
   slib_f=!item $slib_i of $slib_uu
253
   !if $slib_f!=$empty and $slib_sup!=$empty and $slib_inf!=$empty
229
   !if $slib_f!=$empty and $slib_sup!=$empty and $slib_inf!=$empty
254
    slib_pdata=!append item $slib_inf,0,$slib_inf,$slib_f,$slib_sup,$slib_f,$slib_sup,0 to $slib_pdata
230
    slib_pdata=!append item $slib_inf,0,$slib_inf,$slib_f,$slib_sup,$slib_f,$slib_sup,0 to $slib_pdata
255
   !endif
231
   !endif
256
  !next slib_i
232
  !next slib_i
257
 
233
 
258
!endif
234
!endif
259
!if step iswordof $slib_baton
235
!if step iswordof $slib_baton
260
 !for slib_i=1 to $[$slib_cnt]
236
 !for slib_i=1 to $[$slib_cnt]
261
   slib_inf=!item $[$slib_i] of $slib_w
237
   slib_inf=!item $[$slib_i] of $slib_w
262
   slib_sup=!item $[$slib_i+1] of $slib_w
238
   slib_sup=!item $[$slib_i+1] of $slib_w
263
   slib_f=!item $slib_i of $slib_uu
239
   slib_f=!item $slib_i of $slib_uu
264
   !if $slib_f!=$empty and $slib_sup!=$empty and $slib_inf!=$empty
240
   !if $slib_f!=$empty and $slib_sup!=$empty and $slib_inf!=$empty
265
    slib_pdata=!append item $slib_inf,$slib_f,$slib_sup,$slib_f to $slib_pdata
241
    slib_pdata=!append item $slib_inf,$slib_f,$slib_sup,$slib_f to $slib_pdata
266
   !endif
242
   !endif
267
  !next slib_i
243
  !next slib_i
268
!endif
244
!endif
269
!if stair iswordof $slib_baton
245
!if stair iswordof $slib_baton
270
!for slib_i=1 to $[$slib_cnt]
246
!for slib_i=1 to $[$slib_cnt]
271
   slib_inf=!item $[$slib_i] of $slib_w
247
   slib_inf=!item $[$slib_i] of $slib_w
272
   slib_sup=!item $[$slib_i+1] of $slib_w
248
   slib_sup=!item $[$slib_i+1] of $slib_w
Line 276... Line 252...
276
   !endif
252
   !endif
277
   !if $slib_i < $[$slib_cnt]
253
   !if $slib_i < $[$slib_cnt]
278
     slib_points=!append item $slib_inf,$slib_f to $slib_points
254
     slib_points=!append item $slib_inf,$slib_f to $slib_points
279
   !endif
255
   !endif
280
  !next slib_i
256
  !next slib_i
281
 
-
 
282
!endif
257
!endif
283
 
258
 
284
slib_out=$slib_pdata\
259
slib_out=$slib_pdata\
285
$slib_points\
260
$slib_points\
286
linewidth 1\
261
linewidth 1\
Line 294... Line 269...
294
 !else
269
 !else
295
    slib_out=$slib_out,$insdraw_size
270
    slib_out=$slib_out,$insdraw_size
296
 !endif
271
 !endif
297
!endif
272
!endif
298
 
273
 
299
!reset  insdraw_size
274
!reset insdraw_size