Rev 11352 | Rev 11355 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 11352 | Rev 11353 | ||
---|---|---|---|
Line 4... | Line 4... | ||
4 | 4 | ||
5 |
|
5 | slib_parms=4\ |
6 |
|
6 | ,[min_x, max_y,size_x,size_y] de la fenêtre in real coord and in pixels\ |
7 |
|
7 | ,3- or 5- vector for [d1,q1,mediane,q2,d2] or [q1,mediane,q2] \ |
8 |
|
8 | ,3- or 5-vector with m (mobile) or f (fixed) at each position\ |
- | 9 | ,option:number="", raw anstype stick |
|
9 |
|
10 | slib_comment=<ul><li>option <span class="tt">number</span> is useful in case of several boxplots \ |
10 |
|
11 | in the same html page, by default nothing</li>\ |
11 | - | ||
12 |
|
12 | <li>option <span class="tt">raw</span> gives the javascript code</li>\ |
- | 13 | <li>option <span class="tt">anstype</span> gives the code necessary to use with anstype <span class="tt">jsxgraph</span></li>\ |
|
13 |
|
14 | <li>option <span class="tt">stick</span> gives the sticks to show, by default 1.</li>\</ul> |
14 | 15 | ||
- | 16 | slib_out=Box plot. Some points can be fixed or mobile. |
|
15 | slib_author=Bernadette, Perrin-Riou |
17 | slib_author=Bernadette, Perrin-Riou |
16 | slib_title=Box plot |
18 | slib_title=Box plot |
17 | slib_example=[0,10],[4,6,7],,number=1\ |
19 | slib_example=[0,10],[4,6,7],,number=1\ |
18 | [ |
20 | [0,10,500,200],[4,6,7],[m,f],number=2\ |
19 | [0,10],[1,4,6,7,8],,number=3\ |
21 | [0,10],[1,4,6,7,8],,number=3\ |
20 | [10,100],[21,54,66,77,89],[m,f,f,m,f],number=4 stick=10\ |
22 | [10,100],[21,54,66,77,89],[m,f,f,m,f],number=4 stick=10\ |
21 | [0,10],[1,2,6],,raw |
23 | [0,10],[1,2,6],,raw |
22 | 24 | ||
23 | !exit |
25 | !exit |
24 | 26 | ||
25 | :proc |
27 | :proc |
26 | slib_out= |
28 | slib_out= |
27 | - | ||
- | 29 | !!!warning the name of the object |
|
28 | !distribute item $wims_read_parm into slib_range,slib_p,slib_fix,slib_opt |
30 | !distribute item $wims_read_parm into slib_range,slib_p,slib_fix,slib_opt |
29 | ! |
31 | |
30 | !set slib_fix=!declosing $slib_fix |
32 | !set slib_fix=!declosing $slib_fix |
31 | !set slib_range=!declosing $slib_range |
33 | !set slib_range=!declosing $slib_range |
32 | !distribute item $slib_range into slib_xmin,slib_xmax,slib_xsize,slib_ysize |
34 | !distribute item $slib_range into slib_xmin,slib_xmax,slib_xsize,slib_ysize |
33 | !default slib_xsize=300 |
35 | !default slib_xsize=300 |
34 | !default slib_ysize=100 |
36 | !default slib_ysize=100 |
Line 42... | Line 44... | ||
42 | !else |
44 | !else |
43 | !distribute item $slib_p into slib_dec1,slib_q1,slib_med,slib_q3,slib_dec9 |
45 | !distribute item $slib_p into slib_dec1,slib_q1,slib_med,slib_q3,slib_dec9 |
44 | !endif |
46 | !endif |
45 | !set slib_opt=!declosing $slib_opt |
47 | !set slib_opt=!declosing $slib_opt |
46 | !set slib_nb=!getopt number in $slib_opt |
48 | !set slib_nb=!getopt number in $slib_opt |
47 | !if |
49 | !if !=$empty |
48 | slib_nb=_$slib_nb |
50 | slib_nb=_$slib_nb |
49 | !endif |
51 | !endif |
50 | !set slib_brd=brd$slib_nb |
52 | !set slib_brd=brd$slib_nb |
51 | !set slib_jx=jxgbox$slib_nb |
53 | !set slib_jx=jxgbox$slib_nb |
- | 54 | ||
- | 55 | !! the following definition of $slib_jxr and $slib_jxv is cruxial when use with the |
|
- | 56 | !! anstype jsxgraph. Do not change it. |
|
- | 57 | !set slib_jxr=$(slib_jx)_rep |
|
- | 58 | !set slib_jxv=$(slib_jx)_var |
|
52 | !set slib_h=3 |
59 | !set slib_h=3 |
53 | !set slib_h1=$[$slib_h-1] |
60 | !set slib_h1=$[$slib_h-1] |
54 | !set slib_h2=$[$slib_h+1] |
61 | !set slib_h2=$[$slib_h+1] |
55 | !set slib_h3=$[$slib_h-2] |
62 | !set slib_h3=$[$slib_h-2] |
56 | !set slib_h4=$[$slib_h+2] |
63 | !set slib_h4=$[$slib_h+2] |
Line 67... | Line 74... | ||
67 | !else |
74 | !else |
68 | !reset slib_fixme |
75 | !reset slib_fixme |
69 | !endif |
76 | !endif |
70 | !if raw notwordof $slib_opt |
77 | !if raw notwordof $slib_opt |
71 | !set slib_script1=$slib_script1\ |
78 | !set slib_script1=$slib_script1\ |
72 | $( |
79 | $(slib_jxr)$slib_i=$slib_brd.create('point',[$(slib_p[$slib_i]),$slib_h], {$slib_font$slib_fixme}); |
73 | !else |
80 | !else |
74 | !set slib_script1=$slib_script1\ |
81 | !set slib_script1=$slib_script1\ |
75 | $( |
82 | $(slib_jxr)$slib_i=$slib_brd.create('point',$(slib_jxv)$slib_i, {$slib_font$slib_fixme}); |
76 | 83 | ||
77 | !endif |
84 | !endif |
78 | !next |
85 | !next |
79 | !if $slib_ch=5 |
86 | !if $slib_ch=5 |
80 | !set slib_scriptmove=$slib_brd.on('move', function(){\ |
87 | !set slib_scriptmove=$slib_brd.on('move', function(){\ |
81 | $( |
88 | $(slib_jxr)1.moveTo([Math.min($(slib_jxr)1.X(),$(slib_jxr)2.X()), $slib_h]);\ |
82 | $( |
89 | $(slib_jxr)2.moveTo([Math.min($(slib_jxr)2.X(),$(slib_jxr)3.X()), $slib_h]);\ |
83 | $( |
90 | $(slib_jxr)3.moveTo([Math.min($(slib_jxr)3.X(),$(slib_jxr)4.X()), $slib_h]);\ |
84 | $( |
91 | $(slib_jxr)4.moveTo([Math.min($(slib_jxr)4.X(),$(slib_jxr)5.X()), $slib_h]);\ |
85 | $( |
92 | $(slib_jxr)5.moveTo([Math.max($(slib_jxr)4.X(),$(slib_jxr)5.X()), $slib_h]); |
86 | 93 | ||
87 | !else |
94 | !else |
88 | !set slib_scriptmove=$slib_brd.on('move', function(){\ |
95 | !set slib_scriptmove=$slib_brd.on('move', function(){\ |
89 | $( |
96 | $(slib_jxr)1.moveTo([Math.min($(slib_jxr)1.X(),$(slib_jxr)2.X()), $slib_h]);\ |
90 | $( |
97 | $(slib_jxr)2.moveTo([Math.min($(slib_jxr)2.X(),$(slib_jxr)3.X()), $slib_h]);\ |
91 | $( |
98 | $(slib_jxr)3.moveTo([$(slib_jxr)3.X(), $slib_h]); |
92 | !endif |
99 | !endif |
93 | 100 | ||
94 | !set slib_scriptmove=$slib_scriptmove }); |
101 | !set slib_scriptmove=$slib_scriptmove }); |
95 | !if $slib_ch=5 |
102 | !if $slib_ch=5 |
96 | !set slib_script2=\ |
103 | !set slib_script2=\ |
97 | $(slib_jx) |
104 | $(slib_jx)_pt1m=$slib_brd.create('point',[function(){return $(slib_jxr)1.X()},$slib_h2], {$slib_font,visible:false});\ |
98 | $(slib_jx) |
105 | $(slib_jx)_pt1p=$slib_brd.create('point',[function(){return $(slib_jxr)1.X()},$slib_h1], {$slib_font,visible:false});\ |
99 | $(slib_jx) |
106 | $(slib_jx)_pt5m=$slib_brd.create('point',[function(){return $(slib_jxr)5.X()},$slib_h2], {$slib_font,visible:false});\ |
100 | $(slib_jx) |
107 | $(slib_jx)_pt5p=$slib_brd.create('point',[function(){return $(slib_jxr)5.X()},$slib_h1], {$slib_font,visible:false});\ |
101 | $(slib_jx) |
108 | $(slib_jx)_pt2m=$slib_brd.create('point',[function(){return $(slib_jxr)2.X()},$slib_h4], {$slib_font,visible:false});\ |
102 | $(slib_jx) |
109 | $(slib_jx)_pt2p=$slib_brd.create('point',[function(){return $(slib_jxr)2.X()},$slib_h3], {$slib_font,visible:false});\ |
103 | $(slib_jx) |
110 | $(slib_jx)_pt3m=$slib_brd.create('point',[function(){return $(slib_jxr)3.X()},$slib_h4], {$slib_font,visible:false});\ |
104 | $(slib_jx) |
111 | $(slib_jx)_pt3p=$slib_brd.create('point',[function(){return $(slib_jxr)3.X()},$slib_h3], {$slib_font,visible:false});\ |
105 | $(slib_jx) |
112 | $(slib_jx)_pt4m=$slib_brd.create('point',[function(){return $(slib_jxr)4.X()},$slib_h4], {$slib_font,visible:false});\ |
106 | $(slib_jx) |
113 | $(slib_jx)_pt4p=$slib_brd.create('point',[function(){return $(slib_jxr)4.X()},$slib_h3], {$slib_font,visible:false});\ |
107 | 114 | ||
108 | !set slib_script3=\ |
115 | !set slib_script3=\ |
109 | $slib_brd.create('line',[$( |
116 | $slib_brd.create('line',[$(slib_jxr)1,$(slib_jxr)2],{straightFirst:false, straightLast:false});\ |
110 | $slib_brd.create('line',[$( |
117 | $slib_brd.create('line',[$(slib_jxr)4,$(slib_jxr)5],{straightFirst:false, straightLast:false});\ |
111 | $slib_brd.create('line',[$(slib_jx) |
118 | $slib_brd.create('line',[$(slib_jx)_pt1m,$(slib_jx)_pt1p],{straightFirst:false, straightLast:false});\ |
112 | $slib_brd.create('line',[$(slib_jx) |
119 | $slib_brd.create('line',[$(slib_jx)_pt5m,$(slib_jx)_pt5p],{straightFirst:false, straightLast:false});\ |
113 | $slib_brd.create('line',[$(slib_jx) |
120 | $slib_brd.create('line',[$(slib_jx)_pt2m,$(slib_jx)_pt2p],{straightFirst:false, straightLast:false});\ |
114 | $slib_brd.create('line',[$(slib_jx) |
121 | $slib_brd.create('line',[$(slib_jx)_pt3m,$(slib_jx)_pt3p],{straightFirst:false, straightLast:false});\ |
115 | $slib_brd.create('line',[$(slib_jx) |
122 | $slib_brd.create('line',[$(slib_jx)_pt4m,$(slib_jx)_pt4p],{straightFirst:false, straightLast:false});\ |
116 | $slib_brd.create('line',[$(slib_jx) |
123 | $slib_brd.create('line',[$(slib_jx)_pt2m,$(slib_jx)_pt4m],{straightFirst:false, straightLast:false});\ |
117 | $slib_brd.create('line',[$(slib_jx) |
124 | $slib_brd.create('line',[$(slib_jx)_pt2p,$(slib_jx)_pt4p],{straightFirst:false, straightLast:false}); |
118 | 125 | ||
119 | !else |
126 | !else |
120 | !set slib_script2=\ |
127 | !set slib_script2=\ |
121 | $(slib_jx) |
128 | $(slib_jx)_pt1m=$slib_brd.create('point',[function(){return $(slib_jxr)1.X()},$slib_h4], {$slib_font,visible:false});\ |
122 | $(slib_jx) |
129 | $(slib_jx)_pt1p=$slib_brd.create('point',[function(){return $(slib_jxr)1.X()},$slib_h3], {$slib_font,visible:false});\ |
123 | $(slib_jx) |
130 | $(slib_jx)_pt2m=$slib_brd.create('point',[function(){return $(slib_jxr)2.X()},$slib_h4], {$slib_font,visible:false});\ |
124 | $(slib_jx) |
131 | $(slib_jx)_pt2p=$slib_brd.create('point',[function(){return $(slib_jxr)2.X()},$slib_h3], {$slib_font,visible:false});\ |
125 | $(slib_jx) |
132 | $(slib_jx)_pt3m=$slib_brd.create('point',[function(){return $(slib_jxr)3.X()},$slib_h4], {$slib_font,visible:false});\ |
126 | $(slib_jx) |
133 | $(slib_jx)_pt3p=$slib_brd.create('point',[function(){return $(slib_jxr)3.X()},$slib_h3], {$slib_font,visible:false});\ |
127 | 134 | ||
128 | !set slib_script3=\ |
135 | !set slib_script3=\ |
129 | $slib_brd.create('line',[$(slib_jx) |
136 | $slib_brd.create('line',[$(slib_jx)_pt1m,$(slib_jx)_pt1p],{straightFirst:false, straightLast:false});\ |
130 | $slib_brd.create('line',[$(slib_jx) |
137 | $slib_brd.create('line',[$(slib_jx)_pt2m,$(slib_jx)_pt2p],{straightFirst:false, straightLast:false});\ |
131 | $slib_brd.create('line',[$(slib_jx) |
138 | $slib_brd.create('line',[$(slib_jx)_pt3m,$(slib_jx)_pt3p],{straightFirst:false, straightLast:false});\ |
132 | $slib_brd.create('line',[$(slib_jx) |
139 | $slib_brd.create('line',[$(slib_jx)_pt1m,$(slib_jx)_pt3m],{straightFirst:false, straightLast:false});\ |
133 | $slib_brd.create('line',[$(slib_jx) |
140 | $slib_brd.create('line',[$(slib_jx)_pt1p,$(slib_jx)_pt3p],{straightFirst:false, straightLast:false}); |
134 | !endif |
141 | !endif |
135 | 142 | ||
136 | !set slib_out=$slib_script1\ |
143 | !set slib_out=$slib_script1\ |
137 | $slib_scriptmove\ |
144 | $slib_scriptmove\ |
138 | $slib_script2\ |
145 | $slib_script2\ |
139 | $slib_script3 |
146 | $slib_script3 |
140 | 147 | ||
141 | !if |
148 | !if anstype iswordof $slib_opt |
142 | !readproc slib/geo2D/jsxgraph $slib_jx,$(slib_xsize) x $(slib_ysize),$slib_out |
- | |
143 | !else |
- | |
144 | slib_out=$slib_jx $slib_brd Y=$slib_h\ |
149 | slib_out=$slib_jx $slib_brd Y=$slib_h\ |
145 | $slib_out\ |
150 | $slib_out\ |
146 | $( |
151 | $(slib_jxv)1=[$(slib_p[1]),$slib_h] |
147 | !for slib_i=2 to $slib_ch |
152 | !for slib_i=2 to $slib_ch |
148 | slib_out=$slib_out;$( |
153 | slib_out=$slib_out;$(slib_jxv)$slib_i=[$(slib_p[$slib_i]),$slib_h] |
149 | !next |
154 | !next |
- | 155 | !else |
|
- | 156 | !if raw notwordof $slib_opt |
|
- | 157 | !readproc slib/geo2D/jsxgraph $slib_jx,$(slib_xsize) x $(slib_ysize),$slib_out |
|
- | 158 | !endif |
|
150 | !endif |
159 | !endif |
- | 160 |