File: axis

package info (click to toggle)
ploticus-doc 2.33-1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 9,392 kB
  • ctags: 169
  • sloc: pascal: 469; makefile: 63; sh: 11
file content (1577 lines) | stat: -rw-r--r-- 30,953 bytes parent folder | download
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
.ig >>
<STYLE TYPE="text/css">
<!--
        A:link{text-decoration:none}
        A:visited{text-decoration:none}
        A:active{text-decoration:none}
        OL,UL,P,BODY,TD,TR,TH,FORM { font-family: arial,helvetica,sans-serif;; font-size:small; color: #333333; }

        H1 { font-size: x-large; font-family: arial,helvetica,sans-serif; }
        H2 { font-size: large; font-family: arial,helvetica,sans-serif; }
        H3 { font-size: medium; font-family: arial,helvetica,sans-serif; }
        H4 { font-size: small; font-family: arial,helvetica,sans-serif; }
-->
</STYLE>
<title>ploticus: proc axis (xaxis or yaxis)</title>
<body bgcolor=D0D0EE vlink=0000FF>
<br>
<br>
<center>
<table cellpadding=2 bgcolor=FFFFFF width=550><tr>
<td>
  <table cellpadding=2 width=550><tr>
  <td><br><h2>proc axis (xaxis or yaxis)</h2></td>
  <td align=right>
  <small>
  <a href="../doc/welcome.html"><img src="../doc/ploticus.gif" border=0></a><br>
  Version 2.33 Jun'06
     </small><br><a href="../doc/scripthome.html">Scripts</a>
  <td></tr></table>
</td></tr>
<td>
<br>
<br>
.>>

.TH proc_axis_(xaxis_or_yaxis) PL "02-JUN-2006   PL ploticus.sourceforge.net"

.ig >>
<center><a href="../gallery/simple2annot.htm"><img src="../gallery/simple2annot.gif" border=0></a></center>
.>>

.LP
\fBproc xaxis \fR generates an X axis.
\fBproc yaxis \fR generates a Y axis.
Both procs use the same attributes and underlying code, and operate in the 
same general way.
.LP
A typical axis includes a line, some number of regularly placed
short line marks called \fBtics\fR and some \fBstubs\fR (incremental numeric, or text)
which populate the axis.
The axis also can have a descriptive text \fBlabel\fR nearby, often describing the
axis units.  Grid lines or shaded blocks may also be generated.
.LP
\fBproc xaxis\fR and \fBproc yaxis\fR may be invoked directly, and may be invoked
more than once for a given plotting area to render multiple or overlaid axes.
Or, axis attributes may be specified from within 
.ig >>
<a href="areadef.html">
.>>
\0proc areadef
.ig >>
</a>
.>>
using \fCxaxis.\fR or \fCyaxis.\fR prefixes on the attribute names.
.LP
See also the 
.ig >>
<a href="../gallery/gall.sa.html">
.>>
\0gallery scaling and axis examples.
.ig >>
</a>
.>>

.ig >>
<br><br><br>
.>>

.SH Attributes
There are no mandatory attributes.
An axis can be generated with any combination of stubs, tics, and/or axis line.
To generate a basic numeric axis using an automatically determined increment, use
\fCstubs: inc\fR


.ig >>
<br><br><br>
.>>

.SH Stubs
Stubs are what we call the incremental numbers or text tags that populate an axis.
The \fBstubs\fR attribute controls the contents of 
the stubs, and there are several mode variants described below.  \fBUse one of the following:\fR

.LP
\fBstubs:  inc\fRremental
.ig >>
&nbsp; &nbsp;
.>>
[\fIh\fR] 
.ig >>
&nbsp; &nbsp;
.>>
[\fIunits\fR]
.IP \0
Generate incremental stubs for numeric, date or time data.
If neither \fIh\fR or \fIunits\fR are specified (or \fIh\fR is 0) reasonable default behavior will occur
(same as \fCdatematic\fR for date or time data - see below).
Otherwise a stub will be generated and placed at every \fIh\fR units.
\fIunits\fR is optional for plain numeric data; otherwise it is used as shown in the examples below.
.ig >>
<a name=stubunits></a>
.>>
.br
Some examples:
.br
\fC stubs: inc \fR ...reasonable default behavior
.br
\fC stubs: inc 10 \fR ...one stub every 10
.br
\fC stubs: inc 10 \fR ...one stub every 5000
.br
\fC stubs: inc 1 1000 \fR ...one stub every 1000, stubs expressed in # of thousands
.br
\fC stubs: inc 1 0.01 \fR ...one stub every 0.01, stubs expressed in # of hundredths
.br
\fC stubs: inc 1 day \fR ...one stub per day (date or datetime scaletype)
.br
\fC stubs: inc 1 month \fR ...one stub per month (date)
.br
\fC stubs: inc 3 months \fR ...one stub every three months (date)
.br
\fC stubs: inc 1 year \fR ...one stub every year (date)
.br
\fC stubs: inc 1 hour \fR ...one stub per hour (time or datetime)
.br
\fC stubs: inc 10 minutes \fR ...one stub every 10 minutes (time or datetime)
.br
See
.ig >>
<a href="scaleunits.html">
.>>
\0scaleunits
.ig >>
</a>
.>>
for more info on \fIunits\fR.

.ig >>
<br><br>
.>>
.LP
\fBstubs:  datematic\fR
.IP \0
May be used with date, datetime, and time scaletypes.  
Stub increment and stub format are automatically set to reasonable defaults.
Minor tics, autoyear, automonth, and autoday are also sometimes activated as appropriate.
If you wish to override any of the automatic settings you can do so by specifying
any desired attributes after this one.  Datematic is new in version 2.31.  Similar 
.ig >>
<a href="autorange.html">
.>>
\0autorange
.ig >>
</a>
.>>
functionality (\fCnearest=datematic\fR) is also available and is recommended.
.br
Here's an example where minor tics are suppressed as an override:
.nf
 \0 stubs: datematic
 \0 minortics: none
.fi
Here's another example where automonths is turned off as an override:
.nf
 \0 stubs: datematic
 \0 automonths: no
.fi

.ig >>
<br><br>
.>>

.LP
\fBstubs:  usecategories\fR 
.IP \0
If the scaletype for the axis is \fCcategories\fR, this
indicates that the defined category names should be
used as the stubs.  Implies self-locating.

.ig >>
<br><br>
.>>

.LP
\fBstubs  text\fR  
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#text">
.>>
\0multi-line text
.ig >>
</a>
.>>
.IP \0
Indicates that subsequent lines of the script contain 
literal stub text, with one line per stub, and 
terminating with a blank line.
.br
Example:
.nf
.ft C
stubs:  text
	New York
	Atlanta
	Detroit
	Baltimore
.fi
.ft R

.ig >>
<br><br>
.>>

.LP
\fBstubs:  list \fR
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#text">
.>>
\0text
.ig >>
</a>
.>>
.IP \0
Same as \fCstubs  text\fR except that all stubs are given on one
line, with individual stubs separated by \fC\\n\fR.
.br
Example: \fCstubs:  list  New York\\nDetroit\\nBaltimore\fR

.ig >>
<br><br>
.>>

.LP
\fBstubs:  file  
.ig >>
&nbsp; &nbsp;
.>>
\fIfilename\fR 
.IP \0
Same as \fCtext\fR except that content is to be 
taken from \fIfilename\fR.
.IP
Security concern: user-supplied values (such as CGI user variables) should not be used to build the filename, unless
proper measures are taken to detect and remove the \fC../\fR construct (used as a hack to see higher levels of the 
file system).
.IP
Example: \fCstubs:  file  /home/myplots/stubs2\fR
.IP
Note that an alternative way to accomplish this is:
.nf
   stubs: text
\0  #include  \fIfilename\fR
.fi

.ig >>
<br><br>
.>>

.LP
\fBstubs:  datafields=dfield1[,dfield2]
.IP \0
Stub content is to be taken from one or two 
.ig >>
<a href="attributetypes.html#dfield">
.>>
\0data fields.
.ig >>
</a>
.>>
.br
Example: \fCstubs: datafields=1,2\fR  .. would use
the first and second data field for stubs.
No embedded whitespace in the \fCdatafields=\fR construct.

.ig >>
<br><br>
.>>
.LP
\fBstubs:  minmaxonly\fR
.LP
\fBstubs:  minonly\fR
.LP
\fBstubs:  maxonly\fR
.IP \0
Display stubs / tics at the axis minima and/or maxima only.  Versions 2.31+

.ig >>
<br><br>
.>>

.LP
\fBstubs:  none\fR
.IP \0
Don't display any stubs (presumably you only want tics , a grid, or an axis label).
An alternative method that gives you more flexibility is to use one of the above \fCstubs\fR options, 
along with \fCstubhide: yes\fR ; then you can use all the available stub-related options to control
placement of tics.


.ig >>
<br><br><br>
.>>

.SH Irregularly placed stubs

.LP
\fBselflocatingstubs\fR  (see \fCstubs\fR, above)
.IP \0
This attribute uses the same syntax as \fCstubs\fR (above).
However, this attribute allows stubs to be self-locating (each self-locating
stub contains a plottable value that determines where it will be placed).
.br
For the \fCtext\fR, \fClist\fR and \fCfile\fR modes, the first token 
(white-space delimited) in each stub is taken to be a plottable value.  
The remainder of the stub is displayed.
To display the placement value specify the value twice.
.br
For the \fCdatafields\fR mode, the first field \fIa\fR is used for placement
and the second field \fIb\fR is used for content.  To display the placement 
value, specify the same field# twice.
.br
Examples of selflocating stubs:
.br
stubs from datafields: 
.ig >>
<a href="../gallery/lineplot3.htm">
.>>
\0lineplot3
.ig >>
</a>
.>>


.ig >>
<br><br><br>
.>>

.SH Stub formatting

.ig >>
<a name=stubformat></a>
.>>

.LP
\fBstubformat\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fIformat\fC | autoround \fR
.IP \0
This attribute controls the presentation format of numeric, date, time, or datetime stubs.  The
.ig >>
<a href="scaleunits.html">
.>>
\0scaleunits page
.ig >>
</a>
.>>
gives an overview of available scale types and has links
to the respective types and available display formats.
This attribute applies only to incremental stubs that ploticus generates, not to
stubs supplied as text or from a file.
.IP
For numeric stubs, \fIformat\fR is a 
.ig >>
<a href="attributetypes.html#printfspec">
.>>
\0printf-spec
.ig >>
</a>
.>>
(default is \fC%g\fR) or \fCautoround\fR.
\fCautoround\fR causes values to be rounded with the precision being
determined by the number's magnitude.  You can also use \fCautoround1\fR,
\fCautoround2\fR, etc. to increase the precision.
(To add thousands separators or use European decimal notation, see
.ig >>
<a href="settings.html">
.>>
\0proc settings.)
.ig >>
</a>
.>>
\fCautoround\fR functionality works with numeric data only, not dates or times.

.ig >>
<br><br>
.>>

Example 1: \fCstubformat: %5.3f\fR 
.br
This would produce numeric stubs like this 72.350, 72.355, 72.360, etc.

.ig >>
<br><br>
.>>

Example 2: \fCstubformat: %7.0f\fR 
.br
This would produce numeric stubs like this 500000, 1000000, 1500000, etc.

.ig >>
<br><br>
.>>

.IP \0
For other scale types such as date, time, and datetime,
any valid display format may be specified (see the
.ig >>
<a href="dates.html">
.>>
\0dates page
.ig >>
</a>
.>>
and the
.ig >>
<a href="times.html">
.>>
\0times page
.ig >>
</a>
.>>
for available display formats).
If you're using \fCstubs: datematic\fR then a \fCstubformat\fR will be automatically selected 
(but you can specify a \fCstubformat\fR as an override).
Otherwise the fallback default is the current date/time notation.

.ig >>
<br><br>
.>>

Example 3 (dates): \fCstubformat: MMMdd\fR

.ig >>
<br><br>
.>>

Example 4 (times): \fCstubformat: hhA\fR

.ig >>
<br><br>
.>>

Example 5 (datetime): \fCstubformat: MMMdd.hhA\fR

.ig >>
<br><br><br>
.>>

.SH Controlling where stubs begin and end

.LP
\fBstubround\fR
.ig >>
&nbsp; &nbsp;
.>>
\fIh\fR | \fCuseinc\fR | \fInearestspec\fR 
.IP \0
This attribute (2.33+) is useful where axis min and max are at exact "nonround" locations,
but the stubs are to be at round locations.  For example for a certain application
the Y axis must range from 38.4 to 49.2 but stubs are to appear at whole number locations.
.IP 
For numeric axes specify \fIh\fR as a number; this places stubs at even multiples of \fIh\fR.
Or, for numeric axes you can specify \fCuseinc\fR which will use the current stub increment value.
.IP
For date, time, and datetime axes specify \fInearestspec\fR (allowable values for autorange nearest= as listed 
.ig >>
<a href="autorange.html#nearest">
.>>
\0here.
.ig >>
</a>
.>>
For example, \fCstubround: 3hour\fR would place stubs at 3, 6, 9, 12 o'clock, etc.
.IP
\fCstubround\fR is generally not used with the datematic feature, since datematic 
sets the axis min and max to nice even locations.  \fCstubround\fR may be combined with \fCstubrange\fR
below (it is applied after stubrange).

.ig >>
<br><br>
.>>

.LP
\fBstubrange\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fImin\fR [\fImax\fR]
.IP \0
For situations where the default results aren't ideal, this attribute can
be used to specify where stubs begin (and optionally, end).
\fImin\fR is a value in 
.ig >>
<a href="attributetypes.html#positionunits">
.>>
\0scaled units
.ig >>
</a>
.>>
where tics and stubs should start.
If \fImax\fR is specified, it should be a value in
.ig >>
<a href="attributetypes.html#positionunits">
.>>
\0scaled units
.ig >>
</a>
.>>
where tics and stubs should stop.
.IP \0
Example: \fCstubrange: 5 95\fR
.IP \0
Example: suppose you have data in Y ranging from 38.4 to 48.5, and it is important to
your application for the plotting area Y range to be 38.4 to 48.5 exactly, but you want stubs
only on whole numbers.
.ig >>
<a href="../gallery/evenstubs.htm">
.>>
\0Here's a script that does this.
.ig >>
</a>
.>>

.ig >>
<br><br><br>
.>>


.SH Omitting certain stubs


.LP
\fBstubevery\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fIn\fR
.IP \0
Render every \fIn\fRth stub (beginning with the first) and omit the rest.

.LP
\fBstubcull\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fCyes\fR | \fIh\fR
.IP \0
If specified, stubs are suppressed when too close (graphically) to the adjacent stub.
This is useful with log axes to prevent "piling up" of stubs in the upper values.
If \fCyes\fR, a default minimum separation distance (0.1 inches) is used; you can also
specify a minimum separation distance \fIh\fR if desired.  

.ig >>
<br><br>
.>>

.LP
\fBstubomit\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIlist\fR
.IP \0
Used to supress certain indiviual stubs, or all stubs.
This will suppress the stub and the tic.
May be useful when stubs are given with data and certain ones
are too close together or should be omitted for some other reason.
For a more automatic stub supression, such as for log axes, see \fCstubcull\fR.
\fIlist\fR is a 
space-delimited list of one or more strings.  Each may include wild card
characters * and ?.  Any stubs matching any members of the list are suppressed
(however the tic is not suppressed).
To suppress all stubs use this: \fCstubomit: *\fR
.br
Example: \fCstubomit: 0.5 3.5\fR
.br
A gallery example that uses stubomit: 
.ig >>
<a href="../gallery/lineplot3.htm">
.>>
\0lineplot3
.ig >>
</a>
.>>

.ig >>
<br><br>
.>>
.LP
\fBstubhide\fR
.ig >>
&nbsp; &nbsp;
.>>
\fCyes\fR | \fCno\fR
.IP \0
Hide all stubs, but render the accompanying tics.  Allows you to have more control over
tic placement (using any of the available stub-related options) when doing only tics.
(new in version 2.21)


.ig >>
<br><br>
.>>

.LP
\fBstubmininc\fR \fIf\fR
.IP \0
For numeric stubs where the increment is automatically determined, this may be used to ensure that the
increment will be at least \fIf\fR.  One use of this is with integer data to prevent
stubs from appearing in fractional increments.

.ig >>
<br><br>
.>>

.LP
\fBnolimit\fR \fCyes|no\fR
.IP \0
If \fCyes\fR, the internal stub drawing "circuit breaker" (preventing infinite loops in the stub rendering
code) is disabled, for certain special situations where it is a hinderance.

.ig >>
<br><br><br>
.>>

.SH Controlling stub positioning & appearance details

.LP
\fBstubslide\fR  
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#lenvalue">
.>>
\0lenvalue
.ig >>
</a>
.>>
.IP \0
If specified, axis stubs are shifted by the given amount.
For example, a positive value would shift X axis stubs to the right.
For example, a negative value would shift Y axis stubs downward.
Tics are not shifted.
.br
Example: \fCstubslide: 0.5\fR
.br
For another example see 
.ig >>
<a href="../gallery/axis9b.htm">
.>>
\0axis9b
.ig >>
</a>
.>>

.ig >>
<br><br>
.>>


.LP
\fBstubdetails\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="textdetails.html">
.>>
\0textdetails
.ig >>
</a>
.>>
.IP \0
Details pertaining to stub text rendering.
.br
Example: \fCstubdetails: size=7\fR

.ig >>
<br><br>
.>>

.LP
\fBstubreverse\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fC yes | no\fR
.IP \0
If \fCyes\fR, reverses the placement of text and category stubs so that the first stub is
placed at the maxima and the last at the minima.  Has no effect on incremental stubs which
must always move from low to high.
The default is \fCno\fR, except when
text stubs are being placed along the Y axis where this defaults to \fCyes\fR.
Example: \fCstubreverse: yes\fR

.ig >>
<br><br>
.>>

.LP
\fBstubvert\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fC yes | no\fR
.IP \0
If \fCyes\fR, renders X axis stubs using vertical text.  This is useful if
X axis stubs are too long to fit horizontally.
Example: \fCstubvert: yes\fR


.ig >>
<br><br><br>
.>>

.SH Adjusting stub content


.LP
\fBstublen\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fIn\fR
.IP \0
If specified, stubs will be truncated at \fIn\fR characters.
Truncated stubs will have two trailing dots (\fC..\fR) to indicate
that truncation has taken place.
.br
Example: \fCstublen:  8\fR

.ig >>
<br><br>
.>>
.LP
\fBsignreverse\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fC yes | no\fR
.IP \0
If \fCyes\fR, presents incremental numeric stubs with sign reversed.
May be useful in creating an axis that moves from high values
to low values.  
Default is \fCno\fR>
This attribute is useful only when incremental numeric stubs are being generated.
Example:
.br
 \fCstubs: inc 
.br
 signreverse: yes

.ig >>
<br><br>
.>>

.LP
\fBstubmult\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIf\fR
.IP \0
For numeric stubs, this may be used to multiply stub values by \fIf\fR before displaying.

.ig >>
<br><br>
.>>

.LP
\fBfirststub\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fItext\fR
.IP \0
Set the contents of the first stub to \fItext\fR (for blank use \fC""\fR).
The "first stub" is the one nearest to the axis minima.

.ig >>
<br><br>
.>>

.LP
\fBlaststub\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fItext\fR
.IP \0
Set the contents of the last stub to \fItext\fR (for blank use \fC""\fR).
The "last stub" must lie on (or very near to) the axis maxima.
.br
Example: \fClaststub: and so on..\fR
.br
Example: \fClaststub: ""\fR

.ig >>
<br><br>
.>>

.LP
\fBstubsubpat\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIpattern\fR
.br
\fBstubsubnew\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fInewtext\fR
.IP \0
Any stub matching \fIpattern\fR will be changed to \fInewtext\fR (for blank use \fC""\fR).
Both attributes must be supplied.
\fIpattern\fR may contain wild card characters \fC*\fR and \fC?\fR.
Example: 
.br
\fCstubsubpat: *xyz\fR
.br
\fCstubsubnew: ""\fR

.ig >>
<br><br>
.>>

.LP
\fBstubexp\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fC yes | exp-1 | no\fR
.IP \0
Displays incremental numeric stubs in real space when data are in log-transformed space.
If \fCyes\fR, numeric stubs are rewritten as exp(x). 
If \fCexp-1\fR, numeric stubs are rewritten as exp(x)-1, (inverse of log+1).
Default is \fCno\fR.
This attribute is useful only when incremental numeric stubs are being generated.
\fCstubformat: autoround\fR is often useful when this attribute is being used.
.br
Example: \fCstubexp: exp-1\fR

.ig >>
<br><br><br>
.>>

.SH Date-related convenience features

.ig >>
<a name=autoyears></a>
.>>
.LP
These attributes are superseded by the \fCdatematic\fR feature (above), but remain
for the occasional situations where they may be useful individually.

.ig >>
<br><br>
.>>

.LP
\fBautoyears\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fC yes | no | yy | 'yy | yyyy \fR 
.IP \0
With date stubs,
automatically add the year below the first stub and then at every year transition thereafter.
\fC'yy\fR gives a two-digit year such as \fC'99\fR (this is the default).
\fCyy\fR gives a two-digit year such as \fC99\fR.
\fCyyyy\fR gives a four-digit year.

.ig >>
<br><br>
.>>

.LP
\fBautomonths\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fC yes | no | Mmm | MMM | Mmmyy \fR (etc.)
.IP \0
With date stubs,
automatically add the month below the first stub and then at every month transition thereafter.
\fCMmm\fR gives a month abbreviation eg. \fCFeb\fR (this is the default).
\fCMMM\fR gives an all-caps month abbreviation eg. \fCFEB\fR.
\fCMmmyy\fR gives a representation eg. \fCFeb02\fR.  Other legitimate
.ig >>
<a href="dates.html">
.>>
\0month and month/year constructs
.ig >>
</a>
.>>
may also be used.

.ig >>
<br><br>
.>>

.LP
\fBautodays\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fC yes | no | Mmmdd | mm/dd \fR (etc.)
.IP \0
With datetime stubs, 
automatically add the day below the first stub and then
at every day transition thereafter.
\fCMmmdd\fR gives a month/day representation eg. \fCFeb23\fR (this is the default).
\fCmm/dd\fR gives a month/day representation eg. \fC02/23\fR.
Other legitimate
.ig >>
<a href="dates.html">
.>>
\0day and month/day constructs
.ig >>
</a>
.>>
may also be used.

.ig >>
<br><br><br>
.>>

.SH Overall axis position 
.LP
\fBlocation\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#locvalue">
.>>
\0locvalue
.ig >>
</a>
.>>
.IP \0
May be used to specify the position of the axis if the default is not suitable, or
when rendering multiple axes.
For an x axis this value is in y space; for a y axis this value is in x space.  
Append \fC(s)\fR to indicate scaled units.  
Tics and stubs will be placed relative to the position of the line.
.br
\fBNote:\fR when this attribute is specified from within proc areadef, only absolute locations
may be used, because the plotting area is not in effect yet at time of code interpretation.
.IP
Example: \fClocation: 105(s)\fR

.ig >>
<br><br><br>
.>>

.SH The axis line

.LP
\fBaxisline\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="linedetails.html">
.>>
\0linedetails
.ig >>
</a>
.>>
.IP \0
Details pertaining to the axis line.  
Use \fCnone\fR to completely suppress the axis line.
.br
Example: \fCaxisline: width=1.2 color=green\fR

.ig >>
<br><br>
.>>

.LP
\fBaxislinerange\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fImin\fR [\fImax\fR]
.IP \0
May be used to control the range of the axis line.
If only one value is given it is taken to be the minimum.
.br
Example: \fCaxislinerange: 5 95\fR

.ig >>
<br><br>
.>>
.LP
\fBarrow\fR
.ig >>
&nbsp; &nbsp;
.>>
\fCyes | no\fR
.IP \0
If \fCyes\fR, an arrowhead will be rendered at the axis maxima.  Version 2.31+

.ig >>
<br><br>
.>>
.LP
\fBarrowheadsize\fR
.ig >>
&nbsp; &nbsp;
.>>
\fCh\fR
.IP \0
Size of the arrowhead in absolute units.  Default is 0.15"


.ig >>
<br><br><br>
.>>

.SH The axis label
An axis label is a single text label rendered near the axis, desribing the
units used, or other description.  The Y axis label is rendered vertically
on devices that can do so.

.LP
\fBlabel\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#text">
.>>
\0text
.ig >>
</a>
.>>
.IP \0
A text label that will be rendered near the axis, used to describe
what is being plotted.  
.br
Example: \fClabel: Yearly Income\fR


.ig >>
<br><br>
.>>

.LP
\fBlabeldetails\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="textdetails.html">
.>>
\0textdetails
.ig >>
</a>
.>>
.IP \0
Details for rendering the label. Example: \fClabeldetails: size=13 style=I\fR

.ig >>
<br><br>
.>>

.LP
\fBlabeldistance\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIn\fR
.IP \0
Distance of the label below / left of the axis line.
.ig >>
<a href="attributetypes.html#positionunits">
.>>
\0Absolute units.
.ig >>
</a>
.>>
This could also be done via \fClabeldetails: adjust=\fR.
.br
Example: \fClabeldistance: 0.6\fR

.ig >>
<br><br>
.>>

.LP
\fBlabelurl\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIurl\fR
.IP \0
If generating an
.ig >>
<a href="clickmap.html">
.>>
\0HTML clickmap,
.ig >>
</a>
.>>
this specifies a url that will be accessed when the user clicks on the axis label.
.br
Example: \fClabelurl: http://abc.com/docs/explanation.html\fR

.ig >>
<br><br>
.>>

.LP
\fBlabelinfo\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIinfo\fR
.IP
If generating a
.ig >>
<a href="clickmap.html">
.>>
\0client-side clickmap,
.ig >>
</a>
.>>
this specifies text info that will appear as a pop-up when the user moves the mouse over the axis label.


.ig >>
<br><br><br>
.>>

.SH Tics
"Tics" are what we call the short line segments that are part of the
scale along an axis line.

.LP
\fBtics\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fCyes\fR | \fCnone\fR | 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="linedetails.html">
.>>
\0linedetails
.ig >>
</a>
.>>
.IP \0
If anything other than \fCnone\fR is specified, tics will be rendered.
A linedetails specification may be given to control the color, etc. of tic marks.
Tics will be placed whereever a stub is placed.
Incremental tics may be rendered without stubs by setting \fCstubs: none\fR;
they can be controlled using \fCticincrement\fR.
.br
Example: \fCtics: yes\fR

.ig >>
<br><br>
.>>

.LP
\fBticslide\fR  
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#lenvalue">
.>>
\0lenvalue
.ig >>
</a>
.>>
.IP \0
If specified, axis tics are shifted by the given amount.
For example, a positive value would shift X axis stubs to the right.
For example, a negative value would shift Y axis stubs downward.

.ig >>
<br><br>
.>>

.LP
\fBticlen\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIlen1\fR [\fIlen2\fR]
.IP \0
Length of tics in 
.ig >>
<a href="attributetypes.html#positionunits">
.>>
\0absolute units.
.ig >>
</a>
.>>
\fIlen1\fR is the distance that
tics will be drawn from the axis line leftward / downward
and \fIlen2\fR (optional) is the distance that
tics will be drawn from the axis line rightward / upward.
The default is for tics to be drawn a short distance leftward / downward.
Example: \fCticlen: 0.1 0.05\fR
.br
Example: \fCticlen: 0 0.05\fR

.ig >>
<br><br>
.>>

.LP
\fBticincrement\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIn\fR 
.ig >>
&nbsp; &nbsp;
.>>
[\fIunits\fR]
.IP \0
When no stubs are being rendered, this attribute may be used to
control tic placement.  Tics will be placed at every \fIn\fR units.
The \fIunits\fR modifier may be used when working with date or
time scaling; it may be \fCdays\fR, \fChours\fR, etc. 
(see
.ig >>
<a href="scaleunits.html">
.>>
\0scaleunits).
.ig >>
</a>
.>>

.ig >>
<br><br>
.>>

.LP
\fBminortics\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="linedetails.html">
.>>
\0linedetails
.ig >>
</a>
.>>
.IP \0
Details pertaining to the minor tic marks.
Default is \fCnone\fR which suppresses minor tic marks.
Use \fCyes\fR to activate minor tics using the default detail
specifications.

.ig >>
<br><br>
.>>

.LP
\fBminorticinc\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIn\fR 
.ig >>
&nbsp; &nbsp;
.>>
[\fIunits\fR]
.IP \0
Minor tics to be drawn every \fIn\fR scaled units along the axis line.
The \fIunits\fR modifier may be used when working in date or time units;
it may be \fCdays\fR, \fChours\fR, etc.
(see
.ig >>
<a href="scaleunits.html">
.>>
\0scaleunits).
.ig >>
</a>
.>>

.ig >>
<br><br>
.>>

.LP
\fBminorticlen\fR 
.ig >>
&nbsp; &nbsp;
.>>
\fIlen1\fR 
.ig >>
&nbsp; &nbsp;
.>>
[\fIlen2\fR]
.IP \0
Length of tics in 
.ig >>
<a href="attributetypes.html#positionunits">
.>>
\0absolute units.
.ig >>
</a>
.>>
\fIlen1\fR is the distance that
minor tics will be drawn from the axis line leftward/downward,
and \fIlen2\fR (optional) is the distance that
tics will be drawn from the axis line rightward/upward.

.ig >>
<br><br><br>
.>>

.SH Grid lines and shaded blocks

\fBgrid\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="linedetails.html">
.>>
\0linedetails
.ig >>
</a>
.>>
.ig >>
&nbsp; &nbsp;
.>>
| yes | none
.IP \0
If specified, causes background grid lines to be drawn at stub locations
(if no stubs are being rendered, the \fCticincrement\fR attribute
can be used to control placement of grid lines, whether or not tics are
being generated).  Grid lines are never associated with minor tics.
The extent of the lines may be controlled using \fCgridlineextent\fR.
Shaded blocks rather than lines may be done using \fCgridblocks\fR.
Specifying \fCyes\fR gives a grid made up of a default line type.
Default is \fCnone\fR, for no grid at all.
.br
Example: \fCgrid: color=yellow width=1\fR

.ig >>
<br><br>
.>>

.LP
\fBgridblocks\fR
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="color.html">
.>>
\0color1  color2
.ig >>
</a>
.>>
 | none
.IP \0
If specified, causes a background grid made up of shaded zones.
Zones are shaded alternately using \fIcolor1\fR and \fIcolor2\fR.
Extent of the may be controlled using \fCgridlineextent\fR. 
.br
Example: \fCgridblocks:  gray(0.9) white

.ig >>
<br><br>
.>>

.LP
\fBgridlineextent\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#locvalue">
.>>
\0minlocval  [maxlocval]
.ig >>
</a>
.>>
.IP \0
Allows explicit specification of where grid lines or shaded blocks begin
and end.  
Normally grid lines or blocks are drawn from the minima to the maxima.
For example if grid lines are being rendered along with a Y axis,
this attribute may be used to control where the lines begin and end in X.
Commonly used to extend grid structure into axis stubs area as an eye guide.
Note: if shading obliterates stubs.. a workaround is
to first render shading, then render stubs in a separate proc axis invocation.
.br
Example: \fCgridlineextent: min-1.5  max\fR

.ig >>
<br><br>
.>>

.LP
\fBgridskip\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fCmin\fR | \fCmax\fR | \fCminmax\fR
.IP \0
Grid lines can sometimes interfere with a perpendicular axis 
line rendered earlier.  Use this option to suppress the 
grid at the minima, maxima, or both.

.ig >>
<br><br><br>
.>>

.SH Clickmaps and mouseover

.LP
\fBclickmap\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fCgrid | xygrid\fR
.IP \0
If a
.ig >>
<a href="clickmap.html">
.>>
\0clickmap
.ig >>
</a>
.>>
is being generated, 
this attribute allows the plotting area to be mapped as a grid.
Specify \fCgrid\fR for a 1-D grid, or \fCxygrid\fR for a 2-D grid.  
.ig >>
<a href="areadef.html">
.>>
\0proc areadef
.ig >>
</a>
.>>
\fCclickmapurl\fR attribute must also be specified.
See the 
.ig >>
<a href="clickmap.html">
.>>
\0clickmap page
.ig >>
</a>
.>>
for more details and examples.
.IP \0
Example: \fCclickmap: grid\fR

.ig >>
<br><br>
.>>

.LP
\fBclickmapextent\fR 
.ig >>
&nbsp; &nbsp;
.>>
.ig >>
<a href="attributetypes.html#locvalue">
.>>
\0minlocval  [maxlocval]
.ig >>
</a>
.>>
.IP \0
If a
.ig >>
<a href="clickmap.html">
.>>
\0clickmap
.ig >>
</a>
.>>
is being generated, and the plotting area is being mapped as a grid,
normally the regions end at the plotting area boundary.
However, this attribute may be used to extend the region, to include
stubs, for example.
.IP \0
Example: \fCclickmapextent: min-0.5 \fR

.ig >>
<br><br>
.>>

.LP
\fBclickmapvalformat\fR  
.ig >>
&nbsp; &nbsp;
.>>
\fIstubformat\fR
.IP \0
If a
.ig >>
<a href="clickmap.html">
.>>
\0clickmap
.ig >>
</a>
.>>
is being generated, and the plotting area is being mapped as a grid,
this attribute allows control over the format of the values to be sustituted
into the URL template.  Most often useful for special units such as dates.
See the 
.ig >>
<a href="clickmap.html">
.>>
\0clickmap page
.ig >>
</a>
.>>
for more details and examples.
.IP \0
Example: \fCclickmapvalformat: MMMyy\fR

.ig >>
<br><br><br>
.>>

.SH Variables that are set by proc axis
\fBXINC\fR or \fBYINC\fR will be set to hold the axis increment value.

.ig >>
<br>
<br>
</td></tr>
<td align=right>
<a href="../doc/welcome.html">
<img src="../doc/ploticus.gif" border=0></a><br><small>data display engine &nbsp; <br>
<a href="../doc/Copyright.html">Copyright Steve Grubb</a>
<br>
<br>
<center>
<img src="../gallery/all.gif"> 
</center>
</td></tr>
</table>
<br>
<center>
Ploticus is hosted at http://ploticus.sourceforge.net <br>
<img src="http://sourceforge.net/sflogo.php?group_id=38453" width="88" height="31" border="0" alt="SourceForge Logo">
</center>
.>>