Update plot2d.dia.ref because polyline entitie has an additional field (datatip).
[scilab.git] / scilab / modules / graphics / tests / unit_tests / plot2d.dia.ref
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2013 - Scilab Enterprises - Charlotte HECQUET
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 // <-- TEST WITH GRAPHIC -->
8 // Unit test for plot2d()
9 x=(0.1:0.1:2*%pi)';
10 // Error messages with type, size or number of input arguments
11 errmsg=msprintf(_("%s: Wrong number of mandatory input arguments. At least %d expected.\n"),"plot2d",1);
12 assert_checkerror("plot2d( logflag=""nn"", style=[-1,-2,3], rect=[0,-2,2*%pi,2], axesflag=1)", errmsg);
13 errmsg=msprintf(_("%s: Wrong size for input arguments: Incompatible sizes.\n"),"plot2d");
14 assert_checkerror("plot2d(1, sin(x), logflag=""nn"", style=[-1,-2,3], rect=[0,-2,2*%pi,2], axesflag=1)",errmsg);
15 errmsg=[msprintf(_("Function not defined for given argument type(s),\n"));msprintf(_("  check arguments or define function %s for overloading.\n"), "%c_plot2d")];
16 assert_checkerror("plot2d(x, ""s"", logflag=""nn"", style=[-1,-2,3], rect=[0,-2,2*%pi,2], axesflag=1)",errmsg);
17 // Error messages with log mode
18 errmsg=msprintf(_("%s: Bounds on y axis must be strictly positive to use logarithmic mode.\n"),"plot2d");
19 assert_checkerror("plot2d(x, [sin(x)], logflag=""nl"", style=[-1,-2,3], rect=[0,-2,2*%pi,2], axesflag=1)", errmsg);
20 errmsg=msprintf(_("%s: Bounds on x axis must be strictly positive to use logarithmic mode.\n"),"plot2d");
21 assert_checkerror("plot2d(x, [sin(x)], logflag=""ln"", style=[-1,-2,3], rect=[0,-2,2*%pi,2], axesflag=1)", errmsg);
22 errmsg=msprintf(_("%s: Bounds on x axis must be strictly positive to use logarithmic mode.\n"),"plot2d");
23 assert_checkerror("plot2d(x, [sin(x)], logflag=""ll"", style=[-1,-2,3], rect=[0,-2,2*%pi,2], axesflag=1)", errmsg);
24 // Error message with rect
25 errmsg=msprintf(_("%s: Impossible status min > max in x or y rect data.\n"),"plot2d");
26 assert_checkerror("plot2d(x, sin(x), logflag=""nn"", style=[-1,-2,3], rect=[2,0,2*%pi,-2], axesflag=1)",errmsg);
27 // Check plot2(x, sin(x))
28 close
29 x=(0.1:0.1:2*%pi)';
30 plot2d(x, sin(x));
31 f=gcf();
32 a=gca();
33 c=a.children(1) //compound
34  c  =
35  
36 Handle of type "Compound" with properties:
37 ==========================================
38 parent: Axes
39 children: "Polyline"
40 visible = "on"
41 user_data = []
42 tag = 
43 p=c.children(1) //polyline
44  p  =
45  
46 Handle of type "Polyline" with properties:
47 ==========================================
48 parent: Compound
49 children: []
50 datatips: []
51 visible = "on"
52 data = matrix 62x2
53 closed = "off"
54 line_mode = "on"
55 fill_mode = "off"
56 line_style = 1
57 thickness = 1
58 arrow_size_factor = 1
59 polyline_style = 1
60 foreground = 1
61 background = -2
62 interp_color_vector = []
63 interp_color_mode = "off"
64 mark_mode = "off"
65 mark_style = 0
66 mark_size_unit = "tabulated"
67 mark_size = 0
68 mark_foreground = -1
69 mark_background = -2
70 x_shift = []
71 y_shift = []
72 z_shift = []
73 bar_width = 0
74 clip_state = "clipgrf"
75 clip_box = []
76 user_data = []
77 tag = 
78 // Check figure
79 assert_checkequal(f.auto_resize, "on");
80 assert_checkequal(f.viewport, [0,0]);
81 assert_checkequal(f.figure_name, gettext("Graphic window number %d"));
82 assert_checkequal(f.figure_id, 0);
83 assert_checkequal(f.pixmap, "off");
84 assert_checkequal(f.pixel_drawing_mode, "copy");
85 assert_checkequal(f.anti_aliasing, "off");
86 assert_checkequal(f.immediate_drawing, "on");
87 assert_checkequal(f.background, -2);
88 assert_checkequal(f.visible, "on");
89 assert_checkequal(f.rotation_style, "unary");
90 assert_checkequal(f.event_handler, "");
91 assert_checkequal(f.event_handler_enable, "off");
92 assert_checkequal(f.user_data, []);
93 assert_checkequal(f.tag, "");
94 // Check axes
95 assert_checkequal(a.visible, "on");
96 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
97 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
98 assert_checkequal(a.grid, [-1 -1]);
99 assert_checkequal(a.grid_position, "background");
100 assert_checkequal(a.x_location, "bottom");
101 assert_checkequal(a.y_location, "left");
102 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
103 assert_checkequal(a.box, "off");
104 assert_checkequal(a.filled, "on");
105 assert_checkequal(a.sub_ticks, [0, 1]);
106 assert_checkequal(a.font_style, 6);
107 assert_checkequal(a.font_size, 1);
108 assert_checkequal(a.font_color, -1);
109 assert_checkequal(a.fractional_font, "off");
110 assert_checkequal(a.isoview, "off");
111 assert_checkequal(a.cube_scaling, "off");
112 assert_checkequal(a.view, "2d");
113 assert_checkequal(a.rotation_angles, [0, 270]);
114 assert_checkequal(a.log_flags, "nnn");
115 assert_checkequal(a.tight_limits, "off");
116 assert_checktrue(a.data_bounds - [1,-0.9999233;63,0.9995736] < 1d-7);
117 assert_checkequal(a.zoom_box, []);
118 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
119 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
120 assert_checkequal(a.auto_clear, "off");
121 assert_checkequal(a.auto_scale, "on");
122 assert_checkequal(a.hidden_axis_color, 4);
123 assert_checkequal(a.hiddencolor, 4);
124 assert_checkequal(a.line_mode, "on");
125 assert_checkequal(a.line_style, 1);
126 assert_checkequal(a.thickness, 1);
127 assert_checkequal(a.mark_mode, "off");
128 assert_checkequal(a.mark_style, 0);
129 assert_checkequal(a.mark_size_unit, "tabulated");
130 assert_checkequal(a.mark_size, 0);
131 assert_checkequal(a.mark_foreground, -1);
132 assert_checkequal(a.mark_background, -2);
133 assert_checkequal(a.foreground, -1);
134 assert_checkequal(a.background, -2);
135 assert_checkequal(a.arc_drawing_method, "lines");
136 assert_checkequal(a.clip_state, "clipgrf");
137 assert_checkequal(a.clip_box, []);
138 assert_checkequal(a.user_data, []);
139 // Check compound
140 assert_checkequal(c.parent.type, "Axes");
141 assert_checkequal(c.children(:).type, "Polyline");
142 assert_checkequal(c.visible, "on");
143 assert_checkequal(c.user_data, []);
144 // Check polyline
145 DefaultData=(0.1:0.1:2*%pi)';
146 assert_checkequal(p.parent.type, "Compound");
147 assert_checkequal(p.children, []);
148 assert_checkequal(p.visible, "on");
149 assert_checkequal(p.data, [DefaultData, sin(DefaultData)]);
150 assert_checkequal(p.closed, "off");
151 assert_checkequal(p.line_mode, "on");
152 assert_checkequal(p.fill_mode, "off");
153 assert_checkequal(p.line_style, 1);
154 assert_checkequal(p.thickness, 1);
155 assert_checkequal(p.arrow_size_factor, 1);
156 assert_checkequal(p.polyline_style, 1);
157 assert_checkequal(p.foreground, 1);
158 assert_checkequal(p.background, -2);
159 assert_checkequal(p.interp_color_vector, []);
160 assert_checkequal(p.interp_color_mode, "off");
161 assert_checkequal(p.mark_mode, "off");
162 assert_checkequal(p.mark_style, 0);
163 assert_checkequal(p.mark_size_unit, "tabulated");
164 assert_checkequal(p.mark_size, 0);
165 assert_checkequal(p.mark_foreground, -1);
166 assert_checkequal(p.mark_background, -2);
167 assert_checkequal(p.x_shift, []);
168 assert_checkequal(p.y_shift, []);
169 assert_checkequal(p.z_shift, []);
170 assert_checkequal(p.bar_width, 0);
171 assert_checkequal(p.clip_state, "clipgrf");
172 assert_checkequal(p.clip_box, []);
173 assert_checkequal(p.user_data, []);
174 // Check plot2d(x, sin(x), loglag="nl")
175 close
176 x=(0.1:0.1:2*%pi)';
177 plot2d(x, sin(x), logflag="nl");
178 f=gcf();
179 a=gca();
180 c=a.children(1) //compound
181  c  =
182  
183 Handle of type "Compound" with properties:
184 ==========================================
185 parent: Axes
186 children: "Polyline"
187 visible = "on"
188 user_data = []
189 tag = 
190 p=c.children(1) //polyline
191  p  =
192  
193 Handle of type "Polyline" with properties:
194 ==========================================
195 parent: Compound
196 children: []
197 datatips: []
198 visible = "on"
199 data = matrix 62x2
200 closed = "off"
201 line_mode = "on"
202 fill_mode = "off"
203 line_style = 1
204 thickness = 1
205 arrow_size_factor = 1
206 polyline_style = 1
207 foreground = 1
208 background = -2
209 interp_color_vector = []
210 interp_color_mode = "off"
211 mark_mode = "off"
212 mark_style = 0
213 mark_size_unit = "tabulated"
214 mark_size = 0
215 mark_foreground = -1
216 mark_background = -2
217 x_shift = []
218 y_shift = []
219 z_shift = []
220 bar_width = 0
221 clip_state = "clipgrf"
222 clip_box = []
223 user_data = []
224 tag = 
225 // Check figure
226 assert_checkequal(f.auto_resize, "on");
227 assert_checkequal(f.viewport, [0,0]);
228 assert_checkequal(f.figure_name, gettext("Graphic window number %d"));
229 assert_checkequal(f.figure_id, 0);
230 assert_checkequal(f.pixmap, "off");
231 assert_checkequal(f.pixel_drawing_mode, "copy");
232 assert_checkequal(f.anti_aliasing, "off");
233 assert_checkequal(f.immediate_drawing, "on");
234 assert_checkequal(f.background, -2);
235 assert_checkequal(f.visible, "on");
236 assert_checkequal(f.rotation_style, "unary");
237 assert_checkequal(f.event_handler, "");
238 assert_checkequal(f.event_handler_enable, "off");
239 assert_checkequal(f.user_data, []);
240 assert_checkequal(f.tag, "");
241 // Check axes
242 assert_checkequal(a.visible, "on");
243 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
244 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
245 assert_checkequal(a.grid, [-1 -1]);
246 assert_checkequal(a.grid_position, "background");
247 assert_checkequal(a.x_location, "bottom");
248 assert_checkequal(a.y_location, "left");
249 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
250 assert_checkequal(a.box, "off");
251 assert_checkequal(a.filled, "on");
252 assert_checkequal(a.sub_ticks, [0, 4]);
253 assert_checkequal(a.font_style, 6);
254 assert_checkequal(a.font_size, 1);
255 assert_checkequal(a.font_color, -1);
256 assert_checkequal(a.fractional_font, "off");
257 assert_checkequal(a.isoview, "off");
258 assert_checkequal(a.cube_scaling, "off");
259 assert_checkequal(a.view, "2d");
260 assert_checkequal(a.rotation_angles, [0, 270]);
261 assert_checkequal(a.log_flags, "nln");
262 assert_checkequal(a.tight_limits, "off");
263 assert_checktrue(a.data_bounds - [0.1, 0.0415807; 6.2, 0.9995736] < 1d-7);
264 assert_checkequal(a.zoom_box, []);
265 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
266 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
267 assert_checkequal(a.auto_clear, "off");
268 assert_checkequal(a.auto_scale, "on");
269 assert_checkequal(a.hidden_axis_color, 4);
270 assert_checkequal(a.hiddencolor, 4);
271 assert_checkequal(a.line_mode, "on");
272 assert_checkequal(a.line_style, 1);
273 assert_checkequal(a.thickness, 1);
274 assert_checkequal(a.mark_mode, "off");
275 assert_checkequal(a.mark_style, 0);
276 assert_checkequal(a.mark_size_unit, "tabulated");
277 assert_checkequal(a.mark_size, 0);
278 assert_checkequal(a.mark_foreground, -1);
279 assert_checkequal(a.mark_background, -2);
280 assert_checkequal(a.foreground, -1);
281 assert_checkequal(a.background, -2);
282 assert_checkequal(a.arc_drawing_method, "lines");
283 assert_checkequal(a.clip_state, "clipgrf");
284 assert_checkequal(a.clip_box, []);
285 assert_checkequal(a.user_data, []);
286 // Check compound
287 assert_checkequal(c.parent.type, "Axes");
288 assert_checkequal(c.children(:).type, "Polyline");
289 assert_checkequal(c.visible, "on");
290 assert_checkequal(c.user_data, []);
291 // Check polyline
292 DefaultData=(0.1:0.1:2*%pi)';
293 assert_checkequal(p.parent.type, "Compound");
294 assert_checkequal(p.children, []);
295 assert_checkequal(p.visible, "on");
296 assert_checkequal(p.data, [DefaultData, sin(DefaultData)]);
297 assert_checkequal(p.closed, "off");
298 assert_checkequal(p.line_mode, "on");
299 assert_checkequal(p.fill_mode, "off");
300 assert_checkequal(p.line_style, 1);
301 assert_checkequal(p.thickness, 1);
302 assert_checkequal(p.arrow_size_factor, 1);
303 assert_checkequal(p.polyline_style, 1);
304 assert_checkequal(p.foreground, 1);
305 assert_checkequal(p.background, -2);
306 assert_checkequal(p.interp_color_vector, []);
307 assert_checkequal(p.interp_color_mode, "off");
308 assert_checkequal(p.mark_mode, "off");
309 assert_checkequal(p.mark_style, 0);
310 assert_checkequal(p.mark_size_unit, "tabulated");
311 assert_checkequal(p.mark_size, 0);
312 assert_checkequal(p.mark_foreground, -1);
313 assert_checkequal(p.mark_background, -2);
314 assert_checkequal(p.x_shift, []);
315 assert_checkequal(p.y_shift, []);
316 assert_checkequal(p.z_shift, []);
317 assert_checkequal(p.bar_width, 0);
318 assert_checkequal(p.clip_state, "clipgrf");
319 assert_checkequal(p.clip_box, []);
320 assert_checkequal(p.user_data, []);
321 // Check plot2d(x, sin(x), logflag="ln")
322 close
323 x=(0.1:0.1:2*%pi)';
324 plot2d(x, sin(x), logflag="ln");
325 f=gcf();
326 a=gca();
327 c=a.children(1) //compound
328  c  =
329  
330 Handle of type "Compound" with properties:
331 ==========================================
332 parent: Axes
333 children: "Polyline"
334 visible = "on"
335 user_data = []
336 tag = 
337 p=c.children(1) //polyline
338  p  =
339  
340 Handle of type "Polyline" with properties:
341 ==========================================
342 parent: Compound
343 children: []
344 datatips: []
345 visible = "on"
346 data = matrix 62x2
347 closed = "off"
348 line_mode = "on"
349 fill_mode = "off"
350 line_style = 1
351 thickness = 1
352 arrow_size_factor = 1
353 polyline_style = 1
354 foreground = 1
355 background = -2
356 interp_color_vector = []
357 interp_color_mode = "off"
358 mark_mode = "off"
359 mark_style = 0
360 mark_size_unit = "tabulated"
361 mark_size = 0
362 mark_foreground = -1
363 mark_background = -2
364 x_shift = []
365 y_shift = []
366 z_shift = []
367 bar_width = 0
368 clip_state = "clipgrf"
369 clip_box = []
370 user_data = []
371 tag = 
372 // Check sub_ticks
373 assert_checkequal(a.sub_ticks, [3, 1]);
374 // Check data_bounds
375 assert_checktrue(a.data_bounds - [0.1, - 0.9999233 ; 6.2, 0.9995736] < 1d-7);
376 // Check logflags
377 assert_checkequal(a.log_flags, "lnn");
378 // Check data
379 assert_checkequal(p.data, [DefaultData, sin(DefaultData)]);
380 // Check plot2d(x, sin(x), logflag="ll")
381 close
382 x=(0.1:0.1:2*%pi)';
383 plot2d(x, sin(x), logflag="ll");
384 f=gcf();
385 a=gca();
386 c=a.children(1) //compound
387  c  =
388  
389 Handle of type "Compound" with properties:
390 ==========================================
391 parent: Axes
392 children: "Polyline"
393 visible = "on"
394 user_data = []
395 tag = 
396 p=c.children(1) //polyline
397  p  =
398  
399 Handle of type "Polyline" with properties:
400 ==========================================
401 parent: Compound
402 children: []
403 datatips: []
404 visible = "on"
405 data = matrix 62x2
406 closed = "off"
407 line_mode = "on"
408 fill_mode = "off"
409 line_style = 1
410 thickness = 1
411 arrow_size_factor = 1
412 polyline_style = 1
413 foreground = 1
414 background = -2
415 interp_color_vector = []
416 interp_color_mode = "off"
417 mark_mode = "off"
418 mark_style = 0
419 mark_size_unit = "tabulated"
420 mark_size = 0
421 mark_foreground = -1
422 mark_background = -2
423 x_shift = []
424 y_shift = []
425 z_shift = []
426 bar_width = 0
427 clip_state = "clipgrf"
428 clip_box = []
429 user_data = []
430 tag = 
431 // Check sub_ticks
432 assert_checkequal(a.sub_ticks, [3, 4]);
433 // Check data_bounds
434 assert_checktrue(a.data_bounds - [0.1, 0.0415807 ; 6.2, 0.9995736] < 1d-7);
435 // Check logflags
436 assert_checkequal(a.log_flags, "lln");
437 // Check data
438 assert_checkequal(p.data, [DefaultData, sin(DefaultData)]);
439 // Check style=[-1,-2,-3,-4]
440 close
441 x=(0.1:0.1:2*%pi)';
442 plot2d(x, [sin(x),sin(2*x), sin(3*x), sin(4*x)], style=[-1,-2,-3,-4]);
443 f=gcf();
444 a=gca();
445 c=a.children(1) //compound
446  c  =
447  
448 Handle of type "Compound" with properties:
449 ==========================================
450 parent: Axes
451 children: ["Polyline","Polyline","Polyline","Polyline"]
452 visible = "on"
453 user_data = []
454 tag = 
455 p1=c.children(1) //polyline 1
456  p1  =
457  
458 Handle of type "Polyline" with properties:
459 ==========================================
460 parent: Compound
461 children: []
462 datatips: []
463 visible = "on"
464 data = matrix 62x2
465 closed = "off"
466 line_mode = "off"
467 fill_mode = "off"
468 line_style = 1
469 thickness = 1
470 arrow_size_factor = 1
471 polyline_style = 1
472 foreground = -1
473 background = -2
474 interp_color_vector = []
475 interp_color_mode = "off"
476 mark_mode = "on"
477 mark_style = 4
478 mark_size_unit = "tabulated"
479 mark_size = 0
480 mark_foreground = -1
481 mark_background = -2
482 x_shift = []
483 y_shift = []
484 z_shift = []
485 bar_width = 0
486 clip_state = "clipgrf"
487 clip_box = []
488 user_data = []
489 tag = 
490 p2=c.children(2) //polyline 2
491  p2  =
492  
493 Handle of type "Polyline" with properties:
494 ==========================================
495 parent: Compound
496 children: []
497 datatips: []
498 visible = "on"
499 data = matrix 62x2
500 closed = "off"
501 line_mode = "off"
502 fill_mode = "off"
503 line_style = 1
504 thickness = 1
505 arrow_size_factor = 1
506 polyline_style = 1
507 foreground = -1
508 background = -2
509 interp_color_vector = []
510 interp_color_mode = "off"
511 mark_mode = "on"
512 mark_style = 3
513 mark_size_unit = "tabulated"
514 mark_size = 0
515 mark_foreground = -1
516 mark_background = -2
517 x_shift = []
518 y_shift = []
519 z_shift = []
520 bar_width = 0
521 clip_state = "clipgrf"
522 clip_box = []
523 user_data = []
524 tag = 
525 p3=c.children(3) //polyline 3
526  p3  =
527  
528 Handle of type "Polyline" with properties:
529 ==========================================
530 parent: Compound
531 children: []
532 datatips: []
533 visible = "on"
534 data = matrix 62x2
535 closed = "off"
536 line_mode = "off"
537 fill_mode = "off"
538 line_style = 1
539 thickness = 1
540 arrow_size_factor = 1
541 polyline_style = 1
542 foreground = -1
543 background = -2
544 interp_color_vector = []
545 interp_color_mode = "off"
546 mark_mode = "on"
547 mark_style = 2
548 mark_size_unit = "tabulated"
549 mark_size = 0
550 mark_foreground = -1
551 mark_background = -2
552 x_shift = []
553 y_shift = []
554 z_shift = []
555 bar_width = 0
556 clip_state = "clipgrf"
557 clip_box = []
558 user_data = []
559 tag = 
560 p4=c.children(4) //polyline 4
561  p4  =
562  
563 Handle of type "Polyline" with properties:
564 ==========================================
565 parent: Compound
566 children: []
567 datatips: []
568 visible = "on"
569 data = matrix 62x2
570 closed = "off"
571 line_mode = "off"
572 fill_mode = "off"
573 line_style = 1
574 thickness = 1
575 arrow_size_factor = 1
576 polyline_style = 1
577 foreground = -1
578 background = -2
579 interp_color_vector = []
580 interp_color_mode = "off"
581 mark_mode = "on"
582 mark_style = 1
583 mark_size_unit = "tabulated"
584 mark_size = 0
585 mark_foreground = -1
586 mark_background = -2
587 x_shift = []
588 y_shift = []
589 z_shift = []
590 bar_width = 0
591 clip_state = "clipgrf"
592 clip_box = []
593 user_data = []
594 tag = 
595 // Check polyline 1
596 DefaultData=(0.1:0.1:2*%pi)';
597 assert_checkequal(p1.parent.type, "Compound");
598 assert_checkequal(p1.children, []);
599 assert_checkequal(p1.visible, "on");
600 assert_checkequal(p1.data, [DefaultData, sin(4*DefaultData)]);
601 assert_checkequal(p1.closed, "off");
602 assert_checkequal(p1.line_mode, "off");
603 assert_checkequal(p1.fill_mode, "off");
604 assert_checkequal(p1.line_style, 1);
605 assert_checkequal(p1.thickness, 1);
606 assert_checkequal(p1.arrow_size_factor, 1);
607 assert_checkequal(p1.polyline_style, 1);
608 assert_checkequal(p1.foreground, -1);
609 assert_checkequal(p1.background, -2);
610 assert_checkequal(p1.interp_color_vector, []);
611 assert_checkequal(p1.interp_color_mode, "off");
612 assert_checkequal(p1.mark_mode, "on");
613 assert_checkequal(p1.mark_style, 4);
614 assert_checkequal(p1.mark_size_unit, "tabulated");
615 assert_checkequal(p1.mark_size, 0);
616 assert_checkequal(p1.mark_foreground, -1);
617 assert_checkequal(p1.mark_background, -2);
618 assert_checkequal(p1.x_shift, []);
619 assert_checkequal(p1.y_shift, []);
620 assert_checkequal(p1.z_shift, []);
621 assert_checkequal(p1.bar_width, 0);
622 assert_checkequal(p1.clip_state, "clipgrf");
623 assert_checkequal(p1.clip_box, []);
624 assert_checkequal(p1.user_data, []);
625 // Check polyline 2;
626 assert_checkequal(p2.parent.type, "Compound");
627 assert_checkequal(p2.children, []);
628 assert_checkequal(p2.visible, "on");
629 assert_checkequal(p2.data, [DefaultData, sin(3*DefaultData)]);
630 assert_checkequal(p2.closed, "off");
631 assert_checkequal(p2.line_mode, "off");
632 assert_checkequal(p2.fill_mode, "off");
633 assert_checkequal(p2.line_style, 1);
634 assert_checkequal(p2.thickness, 1);
635 assert_checkequal(p2.arrow_size_factor, 1);
636 assert_checkequal(p2.polyline_style, 1);
637 assert_checkequal(p2.foreground, -1);
638 assert_checkequal(p2.background, -2);
639 assert_checkequal(p2.interp_color_vector, []);
640 assert_checkequal(p2.interp_color_mode, "off");
641 assert_checkequal(p2.mark_mode, "on");
642 assert_checkequal(p2.mark_style, 3);
643 assert_checkequal(p2.mark_size_unit, "tabulated");
644 assert_checkequal(p2.mark_size, 0);
645 assert_checkequal(p2.mark_foreground, -1);
646 assert_checkequal(p2.mark_background, -2);
647 assert_checkequal(p2.x_shift, []);
648 assert_checkequal(p2.y_shift, []);
649 assert_checkequal(p2.z_shift, []);
650 assert_checkequal(p2.bar_width, 0);
651 assert_checkequal(p2.clip_state, "clipgrf");
652 assert_checkequal(p2.clip_box, []);
653 assert_checkequal(p2.user_data, []);
654 // Check polyline 3;
655 assert_checkequal(p3.parent.type, "Compound");
656 assert_checkequal(p3.children, []);
657 assert_checkequal(p3.visible, "on");
658 assert_checkequal(p3.data, [DefaultData, sin(2*DefaultData)]);
659 assert_checkequal(p3.closed, "off");
660 assert_checkequal(p3.line_mode, "off");
661 assert_checkequal(p3.fill_mode, "off");
662 assert_checkequal(p3.line_style, 1);
663 assert_checkequal(p3.thickness, 1);
664 assert_checkequal(p3.arrow_size_factor, 1);
665 assert_checkequal(p3.polyline_style, 1);
666 assert_checkequal(p3.foreground, -1);
667 assert_checkequal(p3.background, -2);
668 assert_checkequal(p3.interp_color_vector, []);
669 assert_checkequal(p3.interp_color_mode, "off");
670 assert_checkequal(p3.mark_mode, "on");
671 assert_checkequal(p3.mark_style, 2);
672 assert_checkequal(p3.mark_size_unit, "tabulated");
673 assert_checkequal(p3.mark_size, 0);
674 assert_checkequal(p3.mark_foreground, -1);
675 assert_checkequal(p3.mark_background, -2);
676 assert_checkequal(p3.x_shift, []);
677 assert_checkequal(p3.y_shift, []);
678 assert_checkequal(p3.z_shift, []);
679 assert_checkequal(p3.bar_width, 0);
680 assert_checkequal(p3.clip_state, "clipgrf");
681 assert_checkequal(p3.clip_box, []);
682 assert_checkequal(p3.user_data, []);
683 // Check polyline 4;
684 assert_checkequal(p4.parent.type, "Compound");
685 assert_checkequal(p4.children, []);
686 assert_checkequal(p4.visible, "on");
687 assert_checkequal(p4.data, [DefaultData, sin(DefaultData)]);
688 assert_checkequal(p4.closed, "off");
689 assert_checkequal(p4.line_mode, "off");
690 assert_checkequal(p4.fill_mode, "off");
691 assert_checkequal(p4.line_style, 1);
692 assert_checkequal(p4.thickness, 1);
693 assert_checkequal(p4.arrow_size_factor, 1);
694 assert_checkequal(p4.polyline_style, 1);
695 assert_checkequal(p4.foreground, -1);
696 assert_checkequal(p4.background, -2);
697 assert_checkequal(p4.interp_color_vector, []);
698 assert_checkequal(p4.interp_color_mode, "off");
699 assert_checkequal(p4.mark_mode, "on");
700 assert_checkequal(p4.mark_style, 1);
701 assert_checkequal(p4.mark_size_unit, "tabulated");
702 assert_checkequal(p4.mark_size, 0);
703 assert_checkequal(p4.mark_foreground, -1);
704 assert_checkequal(p4.mark_background, -2);
705 assert_checkequal(p4.x_shift, []);
706 assert_checkequal(p4.y_shift, []);
707 assert_checkequal(p4.z_shift, []);
708 assert_checkequal(p4.bar_width, 0);
709 assert_checkequal(p4.clip_state, "clipgrf");
710 assert_checkequal(p4.clip_box, []);
711 assert_checkequal(p4.user_data, []);
712 // Check rect=[0,-2,2*%pi,2]
713 close
714 x=(0.1:0.1:2*%pi)';
715 plot2d(x, sin(x), rect=[0,-2,2*%pi,2]);
716 f=gcf();
717 a=gca();
718 c=a.children(1) //compound
719  c  =
720  
721 Handle of type "Compound" with properties:
722 ==========================================
723 parent: Axes
724 children: "Polyline"
725 visible = "on"
726 user_data = []
727 tag = 
728 p=c.children(1) //polyline
729  p  =
730  
731 Handle of type "Polyline" with properties:
732 ==========================================
733 parent: Compound
734 children: []
735 datatips: []
736 visible = "on"
737 data = matrix 62x2
738 closed = "off"
739 line_mode = "on"
740 fill_mode = "off"
741 line_style = 1
742 thickness = 1
743 arrow_size_factor = 1
744 polyline_style = 1
745 foreground = 1
746 background = -2
747 interp_color_vector = []
748 interp_color_mode = "off"
749 mark_mode = "off"
750 mark_style = 0
751 mark_size_unit = "tabulated"
752 mark_size = 0
753 mark_foreground = -1
754 mark_background = -2
755 x_shift = []
756 y_shift = []
757 z_shift = []
758 bar_width = 0
759 clip_state = "clipgrf"
760 clip_box = []
761 user_data = []
762 tag = 
763 // Check axes
764 assert_checkequal(a.visible, "on");
765 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
766 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
767 assert_checkequal(a.grid, [-1 -1]);
768 assert_checkequal(a.grid_position, "background");
769 assert_checkequal(a.x_location, "bottom");
770 assert_checkequal(a.y_location, "left");
771 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
772 assert_checkequal(a.box, "off");
773 assert_checkequal(a.filled, "on");
774 assert_checkequal(a.sub_ticks, [0, 4]);
775 assert_checkequal(a.font_style, 6);
776 assert_checkequal(a.font_size, 1);
777 assert_checkequal(a.font_color, -1);
778 assert_checkequal(a.fractional_font, "off");
779 assert_checkequal(a.isoview, "off");
780 assert_checkequal(a.cube_scaling, "off");
781 assert_checkequal(a.view, "2d");
782 assert_checkequal(a.rotation_angles, [0, 270]);
783 assert_checkequal(a.log_flags, "nnn");
784 assert_checkequal(a.tight_limits, "on");
785 assert_checkequal(a.data_bounds, [0, -2; 2*%pi, 2]);
786 assert_checkequal(a.zoom_box, []);
787 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
788 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
789 assert_checkequal(a.auto_clear, "off");
790 assert_checkequal(a.auto_scale, "on");
791 assert_checkequal(a.hidden_axis_color, 4);
792 assert_checkequal(a.hiddencolor, 4);
793 assert_checkequal(a.line_mode, "on");
794 assert_checkequal(a.line_style, 1);
795 assert_checkequal(a.thickness, 1);
796 assert_checkequal(a.mark_mode, "off");
797 assert_checkequal(a.mark_style, 0);
798 assert_checkequal(a.mark_size_unit, "tabulated");
799 assert_checkequal(a.mark_size, 0);
800 assert_checkequal(a.mark_foreground, -1);
801 assert_checkequal(a.mark_background, -2);
802 assert_checkequal(a.foreground, -1);
803 assert_checkequal(a.background, -2);
804 assert_checkequal(a.arc_drawing_method, "lines");
805 assert_checkequal(a.clip_state, "clipgrf");
806 assert_checkequal(a.clip_box, []);
807 assert_checkequal(a.user_data, []);
808 // Check compound
809 assert_checkequal(c.parent.type, "Axes");
810 assert_checkequal(c.children(:).type, "Polyline");
811 assert_checkequal(c.visible, "on");
812 assert_checkequal(c.user_data, []);
813 // Check polyline
814 DefaultData=(0.1:0.1:2*%pi)';
815 assert_checkequal(p.parent.type, "Compound");
816 assert_checkequal(p.children, []);
817 assert_checkequal(p.visible, "on");
818 assert_checkequal(p.data, [DefaultData, sin(DefaultData)]);
819 assert_checkequal(p.closed, "off");
820 assert_checkequal(p.line_mode, "on");
821 assert_checkequal(p.fill_mode, "off");
822 assert_checkequal(p.line_style, 1);
823 assert_checkequal(p.thickness, 1);
824 assert_checkequal(p.arrow_size_factor, 1);
825 assert_checkequal(p.polyline_style, 1);
826 assert_checkequal(p.foreground, 1);
827 assert_checkequal(p.background, -2);
828 assert_checkequal(p.interp_color_vector, []);
829 assert_checkequal(p.interp_color_mode, "off");
830 assert_checkequal(p.mark_mode, "off");
831 assert_checkequal(p.mark_style, 0);
832 assert_checkequal(p.mark_size_unit, "tabulated");
833 assert_checkequal(p.mark_size, 0);
834 assert_checkequal(p.mark_foreground, -1);
835 assert_checkequal(p.mark_background, -2);
836 assert_checkequal(p.x_shift, []);
837 assert_checkequal(p.y_shift, []);
838 assert_checkequal(p.z_shift, []);
839 assert_checkequal(p.bar_width, 0);
840 assert_checkequal(p.clip_state, "clipgrf");
841 assert_checkequal(p.clip_box, []);
842 assert_checkequal(p.user_data, []);
843 // Check axesflag=1
844 close
845 x=(0.1:0.1:2*%pi)';
846 plot2d(x, sin(x), axesflag=1);
847 f=gcf();
848 a=gca();
849 c=a.children(1) //compound
850  c  =
851  
852 Handle of type "Compound" with properties:
853 ==========================================
854 parent: Axes
855 children: "Polyline"
856 visible = "on"
857 user_data = []
858 tag = 
859 p=c.children(1) //polyline
860  p  =
861  
862 Handle of type "Polyline" with properties:
863 ==========================================
864 parent: Compound
865 children: []
866 datatips: []
867 visible = "on"
868 data = matrix 62x2
869 closed = "off"
870 line_mode = "on"
871 fill_mode = "off"
872 line_style = 1
873 thickness = 1
874 arrow_size_factor = 1
875 polyline_style = 1
876 foreground = 1
877 background = -2
878 interp_color_vector = []
879 interp_color_mode = "off"
880 mark_mode = "off"
881 mark_style = 0
882 mark_size_unit = "tabulated"
883 mark_size = 0
884 mark_foreground = -1
885 mark_background = -2
886 x_shift = []
887 y_shift = []
888 z_shift = []
889 bar_width = 0
890 clip_state = "clipgrf"
891 clip_box = []
892 user_data = []
893 tag = 
894 // Check axes
895 assert_checkequal(a.visible, "on");
896 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
897 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
898 assert_checkequal(a.grid, [-1 -1]);
899 assert_checkequal(a.grid_position, "background");
900 assert_checkequal(a.x_location, "bottom");
901 assert_checkequal(a.y_location, "left");
902 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
903 assert_checkequal(a.box, "on");
904 assert_checkequal(a.filled, "on");
905 assert_checkequal(a.sub_ticks, [0, 1]);
906 assert_checkequal(a.font_style, 6);
907 assert_checkequal(a.font_size, 1);
908 assert_checkequal(a.font_color, -1);
909 assert_checkequal(a.fractional_font, "off");
910 assert_checkequal(a.isoview, "off");
911 assert_checkequal(a.cube_scaling, "off");
912 assert_checkequal(a.view, "2d");
913 assert_checkequal(a.rotation_angles, [0, 270]);
914 assert_checkequal(a.log_flags, "nnn");
915 assert_checkequal(a.tight_limits, "off");
916 assert_checktrue(a.data_bounds - [0.1, 0.0415807; 6.2, 0.9995736] < 1d-7);
917 assert_checkequal(a.zoom_box, []);
918 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
919 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
920 assert_checkequal(a.auto_clear, "off");
921 assert_checkequal(a.auto_scale, "on");
922 assert_checkequal(a.hidden_axis_color, 4);
923 assert_checkequal(a.hiddencolor, 4);
924 assert_checkequal(a.line_mode, "on");
925 assert_checkequal(a.line_style, 1);
926 assert_checkequal(a.thickness, 1);
927 assert_checkequal(a.mark_mode, "off");
928 assert_checkequal(a.mark_style, 0);
929 assert_checkequal(a.mark_size_unit, "tabulated");
930 assert_checkequal(a.mark_size, 0);
931 assert_checkequal(a.mark_foreground, -1);
932 assert_checkequal(a.mark_background, -2);
933 assert_checkequal(a.foreground, -1);
934 assert_checkequal(a.background, -2);
935 assert_checkequal(a.arc_drawing_method, "lines");
936 assert_checkequal(a.clip_state, "clipgrf");
937 assert_checkequal(a.clip_box, []);
938 assert_checkequal(a.user_data, []);
939 // Check axesflag=2
940 close
941 x=(0.1:0.1:2*%pi)';
942 plot2d(x, sin(x), axesflag=2);
943 f=gcf();
944 a=gca();
945 c=a.children(1) //compound
946  c  =
947  
948 Handle of type "Compound" with properties:
949 ==========================================
950 parent: Axes
951 children: "Polyline"
952 visible = "on"
953 user_data = []
954 tag = 
955 p=c.children(1) //polyline
956  p  =
957  
958 Handle of type "Polyline" with properties:
959 ==========================================
960 parent: Compound
961 children: []
962 datatips: []
963 visible = "on"
964 data = matrix 62x2
965 closed = "off"
966 line_mode = "on"
967 fill_mode = "off"
968 line_style = 1
969 thickness = 1
970 arrow_size_factor = 1
971 polyline_style = 1
972 foreground = 1
973 background = -2
974 interp_color_vector = []
975 interp_color_mode = "off"
976 mark_mode = "off"
977 mark_style = 0
978 mark_size_unit = "tabulated"
979 mark_size = 0
980 mark_foreground = -1
981 mark_background = -2
982 x_shift = []
983 y_shift = []
984 z_shift = []
985 bar_width = 0
986 clip_state = "clipgrf"
987 clip_box = []
988 user_data = []
989 tag = 
990 // Check axes
991 assert_checkequal(a.visible, "on");
992 assert_checkequal(a.axes_visible, ["off" "off" "off"]);
993 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
994 assert_checkequal(a.grid, [-1 -1]);
995 assert_checkequal(a.grid_position, "background");
996 assert_checkequal(a.x_location, "bottom");
997 assert_checkequal(a.y_location, "left");
998 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
999 assert_checkequal(a.box, "on");
1000 assert_checkequal(a.filled, "on");
1001 assert_checkequal(a.sub_ticks, [1, 1]);
1002 assert_checkequal(a.font_style, 6);
1003 assert_checkequal(a.font_size, 1);
1004 assert_checkequal(a.font_color, -1);
1005 assert_checkequal(a.fractional_font, "off");
1006 assert_checkequal(a.isoview, "off");
1007 assert_checkequal(a.cube_scaling, "off");
1008 assert_checkequal(a.view, "2d");
1009 assert_checkequal(a.rotation_angles, [0, 270]);
1010 assert_checkequal(a.log_flags, "nnn");
1011 assert_checkequal(a.tight_limits, "off");
1012 assert_checktrue(a.data_bounds - [0.1, 0.0415807; 6.2, 0.9995736] < 1d-7);
1013 assert_checkequal(a.zoom_box, []);
1014 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
1015 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
1016 assert_checkequal(a.auto_clear, "off");
1017 assert_checkequal(a.auto_scale, "on");
1018 assert_checkequal(a.hidden_axis_color, 4);
1019 assert_checkequal(a.hiddencolor, 4);
1020 assert_checkequal(a.line_mode, "on");
1021 assert_checkequal(a.line_style, 1);
1022 assert_checkequal(a.thickness, 1);
1023 assert_checkequal(a.mark_mode, "off");
1024 assert_checkequal(a.mark_style, 0);
1025 assert_checkequal(a.mark_size_unit, "tabulated");
1026 assert_checkequal(a.mark_size, 0);
1027 assert_checkequal(a.mark_foreground, -1);
1028 assert_checkequal(a.mark_background, -2);
1029 assert_checkequal(a.foreground, -1);
1030 assert_checkequal(a.background, -2);
1031 assert_checkequal(a.arc_drawing_method, "lines");
1032 assert_checkequal(a.clip_state, "clipgrf");
1033 assert_checkequal(a.clip_box, []);
1034 assert_checkequal(a.user_data, []);
1035 // Check axesflag=3
1036 close
1037 x=(0.1:0.1:2*%pi)';
1038 plot2d(x, sin(x), axesflag=3);
1039 f=gcf();
1040 a=gca();
1041 c=a.children(1) //compound
1042  c  =
1043  
1044 Handle of type "Compound" with properties:
1045 ==========================================
1046 parent: Axes
1047 children: "Polyline"
1048 visible = "on"
1049 user_data = []
1050 tag = 
1051 p=c.children(1) //polyline
1052  p  =
1053  
1054 Handle of type "Polyline" with properties:
1055 ==========================================
1056 parent: Compound
1057 children: []
1058 datatips: []
1059 visible = "on"
1060 data = matrix 62x2
1061 closed = "off"
1062 line_mode = "on"
1063 fill_mode = "off"
1064 line_style = 1
1065 thickness = 1
1066 arrow_size_factor = 1
1067 polyline_style = 1
1068 foreground = 1
1069 background = -2
1070 interp_color_vector = []
1071 interp_color_mode = "off"
1072 mark_mode = "off"
1073 mark_style = 0
1074 mark_size_unit = "tabulated"
1075 mark_size = 0
1076 mark_foreground = -1
1077 mark_background = -2
1078 x_shift = []
1079 y_shift = []
1080 z_shift = []
1081 bar_width = 0
1082 clip_state = "clipgrf"
1083 clip_box = []
1084 user_data = []
1085 tag = 
1086 // Check axes
1087 assert_checkequal(a.visible, "on");
1088 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1089 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1090 assert_checkequal(a.grid, [-1 -1]);
1091 assert_checkequal(a.grid_position, "background");
1092 assert_checkequal(a.x_location, "bottom");
1093 assert_checkequal(a.y_location, "right");
1094 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1095 assert_checkequal(a.box, "off");
1096 assert_checkequal(a.filled, "on");
1097 assert_checkequal(a.sub_ticks, [0, 1]);
1098 assert_checkequal(a.font_style, 6);
1099 assert_checkequal(a.font_size, 1);
1100 assert_checkequal(a.font_color, -1);
1101 assert_checkequal(a.fractional_font, "off");
1102 assert_checkequal(a.isoview, "off");
1103 assert_checkequal(a.cube_scaling, "off");
1104 assert_checkequal(a.view, "2d");
1105 assert_checkequal(a.rotation_angles, [0, 270]);
1106 assert_checkequal(a.log_flags, "nnn");
1107 assert_checkequal(a.tight_limits, "off");
1108 assert_checktrue(a.data_bounds - [0.1, 0.0415807; 6.2, 0.9995736] < 1d-7);
1109 assert_checkequal(a.zoom_box, []);
1110 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
1111 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
1112 assert_checkequal(a.auto_clear, "off");
1113 assert_checkequal(a.auto_scale, "on");
1114 assert_checkequal(a.hidden_axis_color, 4);
1115 assert_checkequal(a.hiddencolor, 4);
1116 assert_checkequal(a.line_mode, "on");
1117 assert_checkequal(a.line_style, 1);
1118 assert_checkequal(a.thickness, 1);
1119 assert_checkequal(a.mark_mode, "off");
1120 assert_checkequal(a.mark_style, 0);
1121 assert_checkequal(a.mark_size_unit, "tabulated");
1122 assert_checkequal(a.mark_size, 0);
1123 assert_checkequal(a.mark_foreground, -1);
1124 assert_checkequal(a.mark_background, -2);
1125 assert_checkequal(a.foreground, -1);
1126 assert_checkequal(a.background, -2);
1127 assert_checkequal(a.arc_drawing_method, "lines");
1128 assert_checkequal(a.clip_state, "clipgrf");
1129 assert_checkequal(a.clip_box, []);
1130 assert_checkequal(a.user_data, []);
1131 // Check axesflag=4
1132 close
1133 x=(0.1:0.1:2*%pi)';
1134 plot2d(x, sin(x), axesflag=4);
1135 f=gcf();
1136 a=gca();
1137 c=a.children(1) //compound
1138  c  =
1139  
1140 Handle of type "Compound" with properties:
1141 ==========================================
1142 parent: Axes
1143 children: "Polyline"
1144 visible = "on"
1145 user_data = []
1146 tag = 
1147 p=c.children(1) //polyline
1148  p  =
1149  
1150 Handle of type "Polyline" with properties:
1151 ==========================================
1152 parent: Compound
1153 children: []
1154 datatips: []
1155 visible = "on"
1156 data = matrix 62x2
1157 closed = "off"
1158 line_mode = "on"
1159 fill_mode = "off"
1160 line_style = 1
1161 thickness = 1
1162 arrow_size_factor = 1
1163 polyline_style = 1
1164 foreground = 1
1165 background = -2
1166 interp_color_vector = []
1167 interp_color_mode = "off"
1168 mark_mode = "off"
1169 mark_style = 0
1170 mark_size_unit = "tabulated"
1171 mark_size = 0
1172 mark_foreground = -1
1173 mark_background = -2
1174 x_shift = []
1175 y_shift = []
1176 z_shift = []
1177 bar_width = 0
1178 clip_state = "clipgrf"
1179 clip_box = []
1180 user_data = []
1181 tag = 
1182 // Check axes
1183 assert_checkequal(a.visible, "on");
1184 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1185 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1186 assert_checkequal(a.grid, [-1 -1]);
1187 assert_checkequal(a.grid_position, "background");
1188 assert_checkequal(a.x_location, "middle");
1189 assert_checkequal(a.y_location, "middle");
1190 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1191 assert_checkequal(a.box, "off");
1192 assert_checkequal(a.filled, "on");
1193 assert_checkequal(a.sub_ticks, [0, 1]);
1194 assert_checkequal(a.font_style, 6);
1195 assert_checkequal(a.font_size, 1);
1196 assert_checkequal(a.font_color, -1);
1197 assert_checkequal(a.fractional_font, "off");
1198 assert_checkequal(a.isoview, "off");
1199 assert_checkequal(a.cube_scaling, "off");
1200 assert_checkequal(a.view, "2d");
1201 assert_checkequal(a.rotation_angles, [0, 270]);
1202 assert_checkequal(a.log_flags, "nnn");
1203 assert_checkequal(a.tight_limits, "off");
1204 assert_checktrue(a.data_bounds - [0.1, 0.0415807; 6.2, 0.9995736] < 1d-7);
1205 assert_checkequal(a.zoom_box, []);
1206 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
1207 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
1208 assert_checkequal(a.auto_clear, "off");
1209 assert_checkequal(a.auto_scale, "on");
1210 assert_checkequal(a.hidden_axis_color, 4);
1211 assert_checkequal(a.hiddencolor, 4);
1212 assert_checkequal(a.line_mode, "on");
1213 assert_checkequal(a.line_style, 1);
1214 assert_checkequal(a.thickness, 1);
1215 assert_checkequal(a.mark_mode, "off");
1216 assert_checkequal(a.mark_style, 0);
1217 assert_checkequal(a.mark_size_unit, "tabulated");
1218 assert_checkequal(a.mark_size, 0);
1219 assert_checkequal(a.mark_foreground, -1);
1220 assert_checkequal(a.mark_background, -2);
1221 assert_checkequal(a.foreground, -1);
1222 assert_checkequal(a.background, -2);
1223 assert_checkequal(a.arc_drawing_method, "lines");
1224 assert_checkequal(a.clip_state, "clipgrf");
1225 assert_checkequal(a.clip_box, []);
1226 assert_checkequal(a.user_data, []);
1227 // Check axesflag=5
1228 close
1229 x=(0.1:0.1:2*%pi)';
1230 plot2d(x, sin(x), axesflag=5);
1231 f=gcf();
1232 a=gca();
1233 c=a.children(1) //compound
1234  c  =
1235  
1236 Handle of type "Compound" with properties:
1237 ==========================================
1238 parent: Axes
1239 children: "Polyline"
1240 visible = "on"
1241 user_data = []
1242 tag = 
1243 p=c.children(1) //polyline
1244  p  =
1245  
1246 Handle of type "Polyline" with properties:
1247 ==========================================
1248 parent: Compound
1249 children: []
1250 datatips: []
1251 visible = "on"
1252 data = matrix 62x2
1253 closed = "off"
1254 line_mode = "on"
1255 fill_mode = "off"
1256 line_style = 1
1257 thickness = 1
1258 arrow_size_factor = 1
1259 polyline_style = 1
1260 foreground = 1
1261 background = -2
1262 interp_color_vector = []
1263 interp_color_mode = "off"
1264 mark_mode = "off"
1265 mark_style = 0
1266 mark_size_unit = "tabulated"
1267 mark_size = 0
1268 mark_foreground = -1
1269 mark_background = -2
1270 x_shift = []
1271 y_shift = []
1272 z_shift = []
1273 bar_width = 0
1274 clip_state = "clipgrf"
1275 clip_box = []
1276 user_data = []
1277 tag = 
1278 // Check axes
1279 assert_checkequal(a.visible, "on");
1280 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1281 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1282 assert_checkequal(a.grid, [-1 -1]);
1283 assert_checkequal(a.grid_position, "background");
1284 assert_checkequal(a.x_location, "middle");
1285 assert_checkequal(a.y_location, "middle");
1286 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1287 assert_checkequal(a.box, "on");
1288 assert_checkequal(a.filled, "on");
1289 assert_checkequal(a.sub_ticks, [0, 1]);
1290 assert_checkequal(a.font_style, 6);
1291 assert_checkequal(a.font_size, 1);
1292 assert_checkequal(a.font_color, -1);
1293 assert_checkequal(a.fractional_font, "off");
1294 assert_checkequal(a.isoview, "off");
1295 assert_checkequal(a.cube_scaling, "off");
1296 assert_checkequal(a.view, "2d");
1297 assert_checkequal(a.rotation_angles, [0, 270]);
1298 assert_checkequal(a.log_flags, "nnn");
1299 assert_checkequal(a.tight_limits, "off");
1300 assert_checktrue(a.data_bounds - [0.1, 0.0415807; 6.2, 0.9995736] < 1d-7);
1301 assert_checkequal(a.zoom_box, []);
1302 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
1303 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
1304 assert_checkequal(a.auto_clear, "off");
1305 assert_checkequal(a.auto_scale, "on");
1306 assert_checkequal(a.hidden_axis_color, 4);
1307 assert_checkequal(a.hiddencolor, 4);
1308 assert_checkequal(a.line_mode, "on");
1309 assert_checkequal(a.line_style, 1);
1310 assert_checkequal(a.thickness, 1);
1311 assert_checkequal(a.mark_mode, "off");
1312 assert_checkequal(a.mark_style, 0);
1313 assert_checkequal(a.mark_size_unit, "tabulated");
1314 assert_checkequal(a.mark_size, 0);
1315 assert_checkequal(a.mark_foreground, -1);
1316 assert_checkequal(a.mark_background, -2);
1317 assert_checkequal(a.foreground, -1);
1318 assert_checkequal(a.background, -2);
1319 assert_checkequal(a.arc_drawing_method, "lines");
1320 assert_checkequal(a.clip_state, "clipgrf");
1321 assert_checkequal(a.clip_box, []);
1322 assert_checkequal(a.user_data, []);
1323 // Check caption with strf="181"
1324 close
1325 x=(0.1:0.1:2*%pi)';
1326 plot2d(x, sin(x), strf="181", leg="sinus");
1327 f=gcf();
1328 a=gca();
1329 c=a.children(1); //compound
1330 l=a.children(2); //legend
1331 p=c.children(1); //polyline
1332 // Check figure
1333 assert_checkequal(f.auto_resize, "on");
1334 assert_checkequal(f.viewport, [0,0]);
1335 assert_checkequal(f.figure_name, gettext("Graphic window number %d"));
1336 assert_checkequal(f.figure_id, 0);
1337 assert_checkequal(f.pixmap, "off");
1338 assert_checkequal(f.pixel_drawing_mode, "copy");
1339 assert_checkequal(f.anti_aliasing, "off");
1340 assert_checkequal(f.immediate_drawing, "on");
1341 assert_checkequal(f.background, -2);
1342 assert_checkequal(f.visible, "on");
1343 assert_checkequal(f.rotation_style, "unary");
1344 assert_checkequal(f.event_handler, "");
1345 assert_checkequal(f.event_handler_enable, "off");
1346 assert_checkequal(f.user_data, []);
1347 assert_checkequal(f.tag, "");
1348 // Check legend
1349 assert_checkequal(l.parent.type,"Axes");
1350 assert_checkequal(l.visible,"on");
1351 assert_checkequal(l.text,"sinus");
1352 assert_checkequal(l.font_style,6);
1353 assert_checkequal(l.font_size,1);
1354 assert_checkequal(l.font_color,-1);
1355 assert_checkequal(l.fractional_font,"off");
1356 assert_checkequal(l.links.type,"Polyline");
1357 assert_checkequal(l.legend_location,"lower_caption");
1358 assert_checktrue(l.position - [0.125,0.9375] < 1d-7);
1359 assert_checkequal(l.line_mode,"off");
1360 assert_checkequal(l.thickness,1);
1361 assert_checkequal(l.foreground,-1);
1362 assert_checkequal(l.fill_mode,"off");
1363 assert_checkequal(l.background,-2);
1364 assert_checkequal(l.clip_state,"off");
1365 assert_checkequal(l.clip_box,[]);
1366 assert_checkequal(l.user_data,[]);
1367 // Check frameflag=1
1368 close
1369 x=(0.1:0.1:2*%pi)';
1370 plot2d(x, sin(x), frameflag=1);
1371 f=gcf();
1372 a=gca();
1373 c=a.children(1); //compound
1374 p=c.children(1); //polyline
1375 // Check axes
1376 assert_checkequal(a.visible, "on");
1377 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1378 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1379 assert_checkequal(a.grid, [-1 -1]);
1380 assert_checkequal(a.grid_position, "background");
1381 assert_checkequal(a.x_location, "bottom");
1382 assert_checkequal(a.y_location, "left");
1383 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1384 assert_checkequal(a.box, "off");
1385 assert_checkequal(a.filled, "on");
1386 assert_checkequal(a.sub_ticks, [1, 1]);
1387 assert_checkequal(a.font_style, 6);
1388 assert_checkequal(a.font_size, 1);
1389 assert_checkequal(a.font_color, -1);
1390 assert_checkequal(a.fractional_font, "off");
1391 assert_checkequal(a.isoview, "off");
1392 assert_checkequal(a.cube_scaling, "off");
1393 assert_checkequal(a.view, "2d");
1394 assert_checkequal(a.rotation_angles, [0, 270]);
1395 assert_checkequal(a.log_flags, "nnn");
1396 assert_checkequal(a.tight_limits, "on");
1397 assert_checkequal(a.data_bounds,[0, 0; 0, 0]);
1398 assert_checkequal(a.zoom_box, []);
1399 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
1400 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
1401 assert_checkequal(a.auto_clear, "off");
1402 assert_checkequal(a.auto_scale, "on");
1403 assert_checkequal(a.hidden_axis_color, 4);
1404 assert_checkequal(a.hiddencolor, 4);
1405 assert_checkequal(a.line_mode, "on");
1406 assert_checkequal(a.line_style, 1);
1407 assert_checkequal(a.thickness, 1);
1408 assert_checkequal(a.mark_mode, "off");
1409 assert_checkequal(a.mark_style, 0);
1410 assert_checkequal(a.mark_size_unit, "tabulated");
1411 assert_checkequal(a.mark_size, 0);
1412 assert_checkequal(a.mark_foreground, -1);
1413 assert_checkequal(a.mark_background, -2);
1414 assert_checkequal(a.foreground, -1);
1415 assert_checkequal(a.background, -2);
1416 assert_checkequal(a.arc_drawing_method, "lines");
1417 assert_checkequal(a.clip_state, "clipgrf");
1418 assert_checkequal(a.clip_box, []);
1419 assert_checkequal(a.user_data, []);
1420 // Check compound
1421 assert_checkequal(c.parent.type, "Axes");
1422 assert_checkequal(c.children(:).type, "Polyline");
1423 assert_checkequal(c.visible, "on");
1424 assert_checkequal(c.user_data, []);
1425 // Check polyline
1426 DefaultData=(0.1:0.1:2*%pi)';
1427 assert_checkequal(p.parent.type, "Compound");
1428 assert_checkequal(p.children, []);
1429 assert_checkequal(p.visible, "on");
1430 assert_checkequal(p.data, [DefaultData, sin(DefaultData)]);
1431 assert_checkequal(p.closed, "off");
1432 assert_checkequal(p.line_mode, "on");
1433 assert_checkequal(p.fill_mode, "off");
1434 assert_checkequal(p.line_style, 1);
1435 assert_checkequal(p.thickness, 1);
1436 assert_checkequal(p.arrow_size_factor, 1);
1437 assert_checkequal(p.polyline_style, 1);
1438 assert_checkequal(p.foreground, 1);
1439 assert_checkequal(p.background, -2);
1440 assert_checkequal(p.interp_color_vector, []);
1441 assert_checkequal(p.interp_color_mode, "off");
1442 assert_checkequal(p.mark_mode, "off");
1443 assert_checkequal(p.mark_style, 0);
1444 assert_checkequal(p.mark_size_unit, "tabulated");
1445 assert_checkequal(p.mark_size, 0);
1446 assert_checkequal(p.mark_foreground, -1);
1447 assert_checkequal(p.mark_background, -2);
1448 assert_checkequal(p.x_shift, []);
1449 assert_checkequal(p.y_shift, []);
1450 assert_checkequal(p.z_shift, []);
1451 assert_checkequal(p.bar_width, 0);
1452 assert_checkequal(p.clip_state, "clipgrf");
1453 assert_checkequal(p.clip_box, []);
1454 assert_checkequal(p.user_data, []);
1455 // Check frameflag=2
1456 close
1457 x=(0.1:0.1:2*%pi)';
1458 plot2d(x, sin(x), frameflag=2);
1459 f=gcf();
1460 a=gca();
1461 c=a.children(1); //compound
1462 p=c.children(1); //polyline
1463 // Check axes
1464 assert_checkequal(a.visible, "on");
1465 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1466 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1467 assert_checkequal(a.grid, [-1 -1]);
1468 assert_checkequal(a.grid_position, "background");
1469 assert_checkequal(a.x_location, "bottom");
1470 assert_checkequal(a.y_location, "left");
1471 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1472 assert_checkequal(a.box, "off");
1473 assert_checkequal(a.filled, "on");
1474 assert_checkequal(a.sub_ticks, [0, 1]);
1475 assert_checkequal(a.font_style, 6);
1476 assert_checkequal(a.font_size, 1);
1477 assert_checkequal(a.font_color, -1);
1478 assert_checkequal(a.fractional_font, "off");
1479 assert_checkequal(a.isoview, "off");
1480 assert_checkequal(a.cube_scaling, "off");
1481 assert_checkequal(a.view, "2d");
1482 assert_checkequal(a.rotation_angles, [0, 270]);
1483 assert_checkequal(a.log_flags, "nnn");
1484 assert_checkequal(a.tight_limits, "on");
1485 assert_checktrue(a.data_bounds - [0.1, -0.9999233; 6.2, 0.9995736] < 1d-7);
1486 assert_checkequal(a.zoom_box, []);
1487 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
1488 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
1489 assert_checkequal(a.auto_clear, "off");
1490 assert_checkequal(a.auto_scale, "on");
1491 assert_checkequal(a.hidden_axis_color, 4);
1492 assert_checkequal(a.hiddencolor, 4);
1493 assert_checkequal(a.line_mode, "on");
1494 assert_checkequal(a.line_style, 1);
1495 assert_checkequal(a.thickness, 1);
1496 assert_checkequal(a.mark_mode, "off");
1497 assert_checkequal(a.mark_style, 0);
1498 assert_checkequal(a.mark_size_unit, "tabulated");
1499 assert_checkequal(a.mark_size, 0);
1500 assert_checkequal(a.mark_foreground, -1);
1501 assert_checkequal(a.mark_background, -2);
1502 assert_checkequal(a.foreground, -1);
1503 assert_checkequal(a.background, -2);
1504 assert_checkequal(a.arc_drawing_method, "lines");
1505 assert_checkequal(a.clip_state, "clipgrf");
1506 assert_checkequal(a.clip_box, []);
1507 assert_checkequal(a.user_data, []);
1508 // Check frameflag=3
1509 close
1510 x=(0.1:0.1:2*%pi)';
1511 plot2d(x, sin(x), frameflag=3);
1512 f=gcf();
1513 a=gca();
1514 c=a.children(1); //compound
1515 p=c.children(1); //polyline
1516 // Check axes
1517 assert_checkequal(a.visible, "on");
1518 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1519 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1520 assert_checkequal(a.grid, [-1 -1]);
1521 assert_checkequal(a.grid_position, "background");
1522 assert_checkequal(a.x_location, "bottom");
1523 assert_checkequal(a.y_location, "left");
1524 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1525 assert_checkequal(a.box, "off");
1526 assert_checkequal(a.filled, "on");
1527 assert_checkequal(a.sub_ticks, [1, 1]);
1528 assert_checkequal(a.isoview, "on");
1529 assert_checkequal(a.rotation_angles, [0, 270]);
1530 assert_checkequal(a.tight_limits, "off");
1531 assert_checkequal(a.data_bounds, [0, 0; 0, 0]);
1532 // Check frameflag=4
1533 close
1534 x=(0.1:0.1:2*%pi)';
1535 plot2d(x, sin(x), frameflag=4);
1536 f=gcf();
1537 a=gca();
1538 c=a.children(1); //compound
1539 p=c.children(1); //polyline
1540 // Check axes
1541 assert_checkequal(a.visible, "on");
1542 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1543 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1544 assert_checkequal(a.grid, [-1 -1]);
1545 assert_checkequal(a.grid_position, "background");
1546 assert_checkequal(a.x_location, "bottom");
1547 assert_checkequal(a.y_location, "left");
1548 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1549 assert_checkequal(a.box, "off");
1550 assert_checkequal(a.filled, "on");
1551 assert_checkequal(a.sub_ticks, [0, 0]);
1552 assert_checkequal(a.isoview, "on");
1553 assert_checkequal(a.rotation_angles, [0, 270]);
1554 assert_checkequal(a.tight_limits, "off");
1555 assert_checktrue(a.data_bounds - [0.1, -0.9999233; 6.2, 0.9995736] < 1d-7);
1556 // Check frameflag=5
1557 close
1558 x=(0.1:0.1:2*%pi)';
1559 plot2d(x, sin(x), frameflag=5);
1560 f=gcf();
1561 a=gca();
1562 c=a.children(1); //compound
1563 p=c.children(1); //polyline
1564 // Check axes
1565 assert_checkequal(a.visible, "on");
1566 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1567 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1568 assert_checkequal(a.grid, [-1 -1]);
1569 assert_checkequal(a.grid_position, "background");
1570 assert_checkequal(a.x_location, "bottom");
1571 assert_checkequal(a.y_location, "left");
1572 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1573 assert_checkequal(a.box, "off");
1574 assert_checkequal(a.filled, "on");
1575 assert_checkequal(a.sub_ticks, [1, 1]);
1576 assert_checkequal(a.isoview, "off");
1577 assert_checkequal(a.rotation_angles, [0, 270]);
1578 assert_checkequal(a.tight_limits, "off");
1579 assert_checkequal(a.data_bounds, [0, 0; 0, 0]);
1580 // Check frameflag=6
1581 close
1582 x=(0.1:0.1:2*%pi)';
1583 plot2d(x, sin(x), frameflag=6);
1584 f=gcf();
1585 a=gca();
1586 c=a.children(1); //compound
1587 p=c.children(1); //polyline
1588 // Check axes
1589 assert_checkequal(a.visible, "on");
1590 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1591 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1592 assert_checkequal(a.grid, [-1 -1]);
1593 assert_checkequal(a.grid_position, "background");
1594 assert_checkequal(a.x_location, "bottom");
1595 assert_checkequal(a.y_location, "left");
1596 assert_checkequal(a.auto_ticks, ["on" "on" "on"]);
1597 assert_checkequal(a.box, "off");
1598 assert_checkequal(a.filled, "on");
1599 assert_checkequal(a.sub_ticks, [0, 1]);
1600 assert_checkequal(a.isoview, "off");
1601 assert_checkequal(a.rotation_angles, [0, 270]);
1602 assert_checkequal(a.tight_limits, "off");
1603 assert_checktrue(a.data_bounds - [0.1, -0.9999233; 6.2, 0.9995736] < 1d-7);
1604 // Check nax
1605 close
1606 x=(0.1:0.1:2*%pi)';
1607 plot2d(x, sin(x), nax=[2,10,2,10]);
1608 f=gcf();
1609 a=gca();
1610 c=a.children(1); //compound
1611 p=c.children(1); //polyline
1612 // Check axes
1613 assert_checkequal(a.visible, "on");
1614 assert_checkequal(a.axes_visible, ["on" "on" "on"]);
1615 assert_checkequal(a.axes_reverse, ["off" "off" "off"]);
1616 assert_checkequal(a.grid, [-1 -1]);
1617 assert_checkequal(a.grid_position, "background");
1618 assert_checkequal(a.x_location, "bottom");
1619 assert_checkequal(a.y_location, "left");
1620 assert_checkequal(a.auto_ticks, ["off" "off" "on"]);
1621 assert_checkequal(a.box, "off");
1622 assert_checkequal(a.filled, "on");
1623 assert_checkequal(a.sub_ticks, [2, 2]);
1624 assert_checkequal(a.font_style, 6);
1625 assert_checkequal(a.font_size, 1);
1626 assert_checkequal(a.font_color, -1);
1627 assert_checkequal(a.fractional_font, "off");
1628 assert_checkequal(a.isoview, "off");
1629 assert_checkequal(a.cube_scaling, "off");
1630 assert_checkequal(a.view, "2d");
1631 assert_checkequal(a.rotation_angles, [0, 270]);
1632 assert_checkequal(a.log_flags, "nnn");
1633 assert_checkequal(a.tight_limits, "off");
1634 assert_checktrue(a.data_bounds - [0.1, -0.9999233; 6.2, 0.9995736] < 1d-7);
1635 assert_checkequal(a.zoom_box, []);
1636 assert_checkequal(a.margins, [0.125, 0.125, 0.125, 0.125]);
1637 assert_checkequal(a.axes_bounds, [0, 0, 1, 1]);
1638 assert_checkequal(a.auto_clear, "off");
1639 assert_checkequal(a.auto_scale, "on");
1640 assert_checkequal(a.hidden_axis_color, 4);
1641 assert_checkequal(a.hiddencolor, 4);
1642 assert_checkequal(a.line_mode, "on");
1643 assert_checkequal(a.line_style, 1);
1644 assert_checkequal(a.thickness, 1);
1645 assert_checkequal(a.mark_mode, "off");
1646 assert_checkequal(a.mark_style, 0);
1647 assert_checkequal(a.mark_size_unit, "tabulated");
1648 assert_checkequal(a.mark_size, 0);
1649 assert_checkequal(a.mark_foreground, -1);
1650 assert_checkequal(a.mark_background, -2);
1651 assert_checkequal(a.foreground, -1);
1652 assert_checkequal(a.background, -2);
1653 assert_checkequal(a.arc_drawing_method, "lines");
1654 assert_checkequal(a.clip_state, "clipgrf");
1655 assert_checkequal(a.clip_box, []);
1656 assert_checkequal(a.user_data, []);
1657 close