File: x07.ml

package info (click to toggle)
plplot 5.15.0%2Bdfsg-19
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 31,312 kB
  • sloc: ansic: 79,707; xml: 28,583; cpp: 20,033; ada: 19,456; tcl: 12,081; f90: 11,431; ml: 7,276; java: 6,863; python: 6,792; sh: 3,274; perl: 828; lisp: 75; makefile: 50; sed: 34; fortran: 5
file content (63 lines) | stat: -rw-r--r-- 1,583 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
(*
        Font demo.
*)

open Plplot

let base =
  [|0; 100; 0; 100; 200; 500; 600; 700; 800; 900;
    2000; 2100; 2200; 2300; 2400; 2500; 2600; 2700; 2800; 2900|]

(*--------------------------------------------------------------------------*\
 * Displays the entire "plsym" symbol (font) set.
\*--------------------------------------------------------------------------*)

let () =
  (* Parse and process command line arguments *)
  plparseopts Sys.argv [PL_PARSE_FULL];

  (* Initialize plplot *)
  plinit ();

  plfontld 0;
  for l = 0 to 19 do
    if l = 2 then plfontld 1;
    pladv 0;

    (* Set up viewport and window *)
    plcol0 2;
    plvpor 0.15 0.95 0.1 0.9;
    plwind 0.0 1.0 0.0 1.0;

    (* Draw the grid using plbox *)
    plbox "bcg" 0.1 0 "bcg" 0.1 0;

    (* Write the digits below the frame *)
    plcol0 15;
    for i = 0 to 9 do
      plmtex "b" 1.5 (0.1 *. float_of_int i +. 0.05) 0.5 (string_of_int i);
    done;

    let k = ref 0 in
    for i = 0 to 9 do
      (* Write the digits to the left of the frame *)
      plmtex "lv" 1.0 (0.95 -. 0.1 *. float_of_int i) 1.0
        (string_of_int (base.(l) + 10 * i));
      for j = 0 to 9 do
        let x = 0.1 *. float_of_int j +. 0.05 in
        let y = 0.95 -. 0.1 *. float_of_int i in

        (* Display the symbols *)
        plsym [|x|] [|y|] (base.(l) + !k);
        incr k;
      done;
    done;

    if l < 2 then
      plmtex "t" 1.5 0.5 0.5 "PLplot Example 7 - PLSYM symbols (compact)"
    else
      plmtex "t" 1.5 0.5 0.5 "PLplot Example 7 - PLSYM symbols (extended)"
  done;
  plend ();
  ()