will store the derivative of the line going from the last to the
current value of the data source. This can be useful for gauges, for
example, to measure the rate of people entering or leaving a
-room. Internally, derive works exaclty like COUNTER but without
+room. Internally, derive works exactly like COUNTER but without
overflow checks. So if your counter does not reset at 32 or 64 bit you
might want to use DERIVE and combine it with a MIN value of 0.
S<[B<-e>|B<--end> I<seconds>]>
S<[B<-x>|B<--x-grid> I<x-axis grid and label>]>
S<[B<-y>|B<--y-grid> I<y-axis grid and label>]>
-S<[B<--alt-y-grid>]>
-S<[B<--alt-autoscale>]>
-S<[B<--alt-autoscale-max>]>
-S<[B<--units-exponent>]> I<value>]>
+S<[B<-Y>|B<--alt-y-grid>]>
+S<[B<-A>|B<--alt-autoscale>]>
+S<[B<-M>|B<--alt-autoscale-max>]>
+S<[B<-X>|B<--units-exponent>]> I<value>]>
S<[B<-v>|B<--vertical-label> I<text>]>
S<[B<-w>|B<--width> I<pixels>]>
S<[B<-h>|B<--height> I<pixels>]>
S<[B<-l>|B<--lower-limit> I<value>]>
S<[B<-g>|B<--no-legend>]>
S<[B<-r>|B<--rigid>]>
-S<[B<--step> I<value>]>
+S<[B<-S>|B<--step> I<value>]>
S<[B<-b>|B<--base> I<value>]>
S<[B<-c>|B<--color> I<COLORTAG>B<#>I<rrggbb>]>
S<[B<-t>|B<--title> I<title>]>
B<[-s|--start E<lt>timeE<gt>]>
B<[-e|--end E<lt>timeE<gt>]>
-B<[--step E<lt>secondsE<gt>]>
+B<[-S|--step E<lt>secondsE<gt>]>
The start and end of what you would like to display, and which
B<RRA> the data should come from. Defaults are: 1 day ago until
--maximum-upper-limit 4000 --minimum-upper-limit 4000
--maximum-lower-limit -3000 --minimum-lower-limit -3000
-B<[--alt-autoscale]>
+B<[-A|--alt-autoscale]>
Sometimes the default algorithm for selecting the y-axis scale is not
performing very well. Normally the scale is selected from a predefined
would display slightly less than C<260-0.001> to slightly more than
C<260+0.001> (Contributed by Sasha Mikheev).
-B<[--alt-autoscale-max]>
+B<[-M|--alt-autoscale-max]>
Where C<--alt-autoscale> will modify both the absolute maximum AND minimum
values, this option will only affect the maximum value. The minimum
be useful when graphing router traffic when the WAN line uses compression,
and thus the throughput may be higher than the WAN line speed.
-B<[--no-gridfit]>
+B<[-N|--no-gridfit]>
To avoid antialiasing effects gridlines are placed on
integer pixel values. This is by default done by extending
skip the grid and labels altogether. The default for this option is
to automatically select sensible values.
-B<[--alt-y-grid]>
+B<[-Y|--alt-y-grid]>
Place Y grid dynamically based on graph Y range. Algorithm ensures
that you always have grid, that there are enough but not too many
Logarithmic y-axis scaling.
-B<[--units-exponent E<lt>valueE<gt>]>
+B<[-X|--units-exponent E<lt>valueE<gt>]>
This sets the 10**exponent scaling of the y-axis values. Normally
values will be scaled to the appropriate units (k, M, etc.). However
=over 4
-=item B<to be depriciated commands>
+=item B<to be deprecated commands>
=over 4
=item B<PRINT> : I<vname> : I<CF> : I<format>
-I<Depriciated. Use the new form of this command in new scripts.>
+I<Deprecated. Use the new form of this command in new scripts.>
The first form of this command is to be used with B<CDEF> I<vname>s.
=item B<PRINT> : I<vname> : I<format>
=item B<GPRINT> : I<vname> : I<CF> : I<format>
-I<Depriciated. Use the new form of this command in new scripts.>
+I<Deprecated. Use the new form of this command in new scripts.>
This is the same as C<PRINT> but now it is printed inside the graph.
=item B<GPRINT> : I<vname> : I<format>
=item B<STACK> : I<vname> # I<color> [ :I<legend> ]
-I<Depriciated. Use the B<STACK> modifiers on the other commands.>
+I<Deprecated. Use the B<STACK> modifiers on the other commands.>
I<Note: the comments on stacking are still valid...>
Repeats the last B<LINEx> or B<AREA> however it doesn't start at the
x-axis but rather on top of the previous element. This implies that
{"lazy", no_argument, 0, 'z'},
{"zoom", required_argument, 0, 'm'},
{"no-legend", no_argument, 0, 'g'},
- {"alt-y-grid", no_argument, 0, 257 },
- {"alt-autoscale", no_argument, 0, 258 },
- {"alt-autoscale-max", no_argument, 0, 259 },
- {"units-exponent",required_argument, 0, 260},
- {"step", required_argument, 0, 261},
- {"no-gridfit", no_argument, 0, 262},
+ {"alt-y-grid", no_argument, 0, 'Y'},
+ {"alt-autoscale", no_argument, 0, 'A'},
+ {"alt-autoscale-max", no_argument, 0, 'M'},
+ {"units-exponent",required_argument, 0, 'X'},
+ {"step", required_argument, 0, 'S'},
+ {"no-gridfit", no_argument, 0, 'N'},
{0,0,0,0}};
int option_index = 0;
int opt;
opt = getopt_long(argc, argv,
- "s:e:x:y:v:w:h:iu:l:rb:oc:n:m:t:f:a:zg",
+ "s:e:x:y:v:w:h:iu:l:rb:oc:n:m:t:f:a:zgYAMX:S:N",
long_options, &option_index);
if (opt == EOF)
break;
switch(opt) {
- case 257:
+ case 'Y':
im->extra_flags |= ALTYGRID;
break;
- case 258:
+ case 'A':
im->extra_flags |= ALTAUTOSCALE;
break;
- case 259:
+ case 'M':
im->extra_flags |= ALTAUTOSCALE_MAX;
break;
case 'g':
im->extra_flags |= NOLEGEND;
break;
- case 260:
+ case 'X':
im->unitsexponent = atoi(optarg);
break;
- case 261:
+ case 'S':
im->step = atoi(optarg);
break;
case 262: