diff --git a/doc/rrdgraph.pod b/doc/rrdgraph.pod
index 72728e7f4ba61e2dd922a5be3db7aa55a1e2de6f..e8e88450752f90a903e4826832b1ac58553dc3ab 100644 (file)
--- a/doc/rrdgraph.pod
+++ b/doc/rrdgraph.pod
=head1 NAME
=head1 NAME
-rrdgraph - Round Robin Database tool grapher functions
+rrdgraph - Round Robin Database tool graphing functions
=head1 SYNOPSIS
=head1 SYNOPSIS
it is best to collect them now using the
B<L<variable definition|rrdgraph_data/VDEF>> statement.
Currently this makes no difference, but in a future version
it is best to collect them now using the
B<L<variable definition|rrdgraph_data/VDEF>> statement.
Currently this makes no difference, but in a future version
-of rrdtool you may want to collect these values before consolidation.
+of RRDtool you may want to collect these values before consolidation.
The data fetched from the B<RRA> is then B<consolidated> so that
The data fetched from the B<RRA> is then B<consolidated> so that
-there is exactly one datapoint per pixel in the graph. If you do
+there is exactly one data point per pixel in the graph. If you do
not take care yourself, B<RRDtool> will expand the range slightly
if necessary. Note, in that case the first and/or last pixel may very
well become unknown!
not take care yourself, B<RRDtool> will expand the range slightly
if necessary. Note, in that case the first and/or last pixel may very
well become unknown!
When you are done fetching and processing the data, it is time to
graph it (or print it). This ends the B<rrdtool graph> sequence.
When you are done fetching and processing the data, it is time to
graph it (or print it). This ends the B<rrdtool graph> sequence.
-=head1 OPTIONS
-
+Use B<graphv> instead of B<graph> to get detailed information about the
+graph geometry and data once it is drawn. See the bottom of the document for
+more information.
-=head2 B<graphv>
+=head1 OPTIONS
-This alternate version of B<graph> takes the same arguments and performs the
-same function. The I<v> stands for I<verbose>, which describes the output
-returned. B<graphv> will return a lot of information about the graph using
-the same format as rrdtool info (key = value). See the bottom of the document for more information.
=head2 I<filename>
=head2 I<filename>
L<AT-STYLE TIME SPECIFICATION|rrdfetch> and L<rrdgraph_examples>.
By default, B<rrdtool graph> calculates the width of one pixel in
the time domain and tries to get data from an B<RRA> with that
L<AT-STYLE TIME SPECIFICATION|rrdfetch> and L<rrdgraph_examples>.
By default, B<rrdtool graph> calculates the width of one pixel in
the time domain and tries to get data from an B<RRA> with that
-resolution. With the B<step> option you can alter this behaviour.
+resolution. With the B<step> option you can alter this behavior.
If you want B<rrdtool graph> to get data at a one-hour resolution
from the B<RRD>, set B<step> to 3'600. Note: a step smaller than
one pixel will silently be ignored.
If you want B<rrdtool graph> to get data at a one-hour resolution
from the B<RRD>, set B<step> to 3'600. Note: a step smaller than
one pixel will silently be ignored.
A horizontal string at the top of the graph and/or a vertically
placed string at the left hand side of the graph.
A horizontal string at the top of the graph and/or a vertically
placed string at the left hand side of the graph.
-=head2 Right Axis
-
-[B<--right-axis> I<scale>B<:>I<shift>]
-[B<--right-axis-label> I<label>]
-
-A second axis will be drawn to the right of the graph. It is tied to the
-left axis via the scale and shift parameters. You can also define a label
-for the right axis.
-
-[B<--right-axis-format> I<format-string>]
-
-By default the format of the axis lables gets determined automatically. If
-you want todo this your self, use this option with the same %lf arguments
-you know from the PRING and GPRINT commands.
=head2 Size
=head2 Size
[B<-r>|B<--rigid>]
By default the graph will be autoscaling so that it will adjust the
[B<-r>|B<--rigid>]
By default the graph will be autoscaling so that it will adjust the
-y-axis to the range of the data. You can change this behaviour by
+y-axis to the range of the data. You can change this behavior by
explicitly setting the limits. The displayed y-axis will then range at
least from B<lower-limit> to B<upper-limit>. Autoscaling will still
permit those boundaries to be stretched unless the B<rigid> option is
explicitly setting the limits. The displayed y-axis will then range at
least from B<lower-limit> to B<upper-limit>. Autoscaling will still
permit those boundaries to be stretched unless the B<rigid> option is
[B<-N>|B<--no-gridfit>]
[B<-N>|B<--no-gridfit>]
-In order to avoid anti-aliasing blurring effects rrdtool snaps
+In order to avoid anti-aliasing blurring effects RRDtool snaps
points to device resolution pixels, this results in a crisper
appearance. If this is not to your liking, you can use this switch
points to device resolution pixels, this results in a crisper
appearance. If this is not to your liking, you can use this switch
-to turn this behaviour off.
-
-Gridfitting is turned off for PDF, EPS, SVG output by default.
-
-=head2 Grid
+to turn this behavior off.
-=over
+Grid-fitting is turned off for PDF, EPS, SVG output by default.
-=item X-Axis
+=head2 X-Axis
[B<-x>|B<--x-grid> I<GTM>B<:>I<GST>B<:>I<MTM>B<:>I<MST>B<:>I<LTM>B<:>I<LST>B<:>I<LPR>B<:>I<LFM>]
[B<-x>|B<--x-grid> B<none>]
The x-axis label is quite complex to configure. If you don't have
[B<-x>|B<--x-grid> I<GTM>B<:>I<GST>B<:>I<MTM>B<:>I<MST>B<:>I<LTM>B<:>I<LST>B<:>I<LPR>B<:>I<LFM>]
[B<-x>|B<--x-grid> B<none>]
The x-axis label is quite complex to configure. If you don't have
-very special needs it is probably best to rely on the autoconfiguration
+very special needs it is probably best to rely on the auto configuration
to get this right. You can specify the string C<none> to suppress the grid
and labels altogether.
to get this right. You can specify the string C<none> to suppress the grid
and labels altogether.
each day. The labels are placed exactly between two major grid lines
as they specify the complete day and not just midnight.
each day. The labels are placed exactly between two major grid lines
as they specify the complete day and not just midnight.
-=item Y-Axis
+[B<--week-fmt> I<strftime format string>]
+
+By default rrdtool uses "Week %V" to render the week number. With this option
+you can define your own format, without completely overriding the xaxis format.
+
+=head2 Y-Axis
[B<-y>|B<--y-grid> I<grid step>B<:>I<label factor>]
[B<-y>|B<--y-grid> I<grid step>B<:>I<label factor>]
of 0 to prevent any scaling of the y-axis values.
This option is very effective at confusing the heck out of the default
of 0 to prevent any scaling of the y-axis values.
This option is very effective at confusing the heck out of the default
-rrdtool autoscaler and grid painter. If rrdtool detects that it is not
+RRDtool autoscaling function and grid painter. If RRDtool detects that it is not
successful in labeling the graph under the given circumstances, it will switch
to the more robust B<--alt-y-grid> mode.
[B<-L>|B<--units-length> I<value>]
successful in labeling the graph under the given circumstances, it will switch
to the more robust B<--alt-y-grid> mode.
[B<-L>|B<--units-length> I<value>]
-How many digits should rrdtool assume the y-axis labels to be? You
+How many digits should RRDtool assume the y-axis labels to be? You
may have to use this option to make enough space once you start
fiddling with the y-axis labeling.
may have to use this option to make enough space once you start
fiddling with the y-axis labeling.
the appropriate units (k, M, etc.) instead of using exponential notation.
Note that for linear graphs, SI notation is used by default.
the appropriate units (k, M, etc.) instead of using exponential notation.
Note that for linear graphs, SI notation is used by default.
-=back
+=head2 Right Y Axis
+
+[B<--right-axis> I<scale>B<:>I<shift>]
+[B<--right-axis-label> I<label>]
+
+A second axis will be drawn to the right of the graph. It is tied to the
+left axis via the scale and shift parameters. You can also define a label
+for the right axis.
+
+[B<--right-axis-format> I<format-string>]
+
+By default the format of the axis labels gets determined automatically. If
+you want to do this your self, use this option with the same %lf arguments
+you know from the PRINT and GPRINT commands.
=head2 Legend
=head2 Legend
Force the generation of HRULE and VRULE legends even if those HRULE or
VRULE will not be drawn because out of graph boundaries (mimics
Force the generation of HRULE and VRULE legends even if those HRULE or
VRULE will not be drawn because out of graph boundaries (mimics
-behaviour of pre 1.0.42 versions).
+behavior of pre 1.0.42 versions).
[B<--legend-position>=(north|south|west|east)]
[B<--legend-position>=(north|south|west|east)]
Only generate the graph if the current graph is out of date or not existent.
Note, that all the calculations will happen regardless so that the output of
Only generate the graph if the current graph is out of date or not existent.
Note, that all the calculations will happen regardless so that the output of
-PRINT and graphv will be complete regardless. Note that the behaviour of
+PRINT and graphv will be complete regardless. Note that the behavior of
lazy in this regard has seen several changes over time. The only thing you
lazy in this regard has seen several changes over time. The only thing you
-can realy rely on before rrdtool 1.3.7 is that lazy will not generate the
+can really rely on before RRDtool 1.3.7 is that lazy will not generate the
graph when it is already there and up to date, and also that it will output
the size of the graph.
graph when it is already there and up to date, and also that it will output
the size of the graph.
A green arrow is made by: C<--color ARROW#00FF00>
A green arrow is made by: C<--color ARROW#00FF00>
-[B<--zoom> I<factor>]
+[B<--grid-dash> I<on>B<:>I<off>]
+
+by default the grid is drawn in a 1 on, 1 off pattern. With this option you can set this yourself
+
+ --grid-dash 1:3 for a dot grid
+
+ --grid-dash 1:0 for uninterrupted grid lines
+
+[B<--border> I<width>]]
+
+Width in pixels for the 3d border drawn around the image. Default 2, 0
+disables the border. See C<SHADEA> and C<SHADEB> above for setting the border
+color.
+
+[B<--dynamic-labels>]
+
+Pick the shape of the color marker next to the label according to the element drawn on the graph.
+
+[B<-m>|B<--zoom> I<factor>]
Zoom the graphics by the given amount. The factor must be E<gt> 0
Zoom the graphics by the given amount. The factor must be E<gt> 0
Use Times for the title: C<--font TITLE:13:Times>
Use Times for the title: C<--font TITLE:13:Times>
+Note that you need to quote the argument to B<--font> if the font-name
+contains whitespace:
+--font "TITLE:13:Some Font"
+
If you do not give a font string you can modify just the size of the default font:
C<--font TITLE:13:>.
If you do not give a font string you can modify just the size of the default font:
C<--font TITLE:13:>.
There are 3 font render modes:
There are 3 font render modes:
-B<normal>: Full Hinting and Antialiasing (default)
+B<normal>: Full Hinting and Anti-aliasing (default)
-B<light>: Slight Hinting and Antialiasing
+B<light>: Slight Hinting and Anti-aliasing
-B<mono>: Full Hinting and NO Antialiasing
+B<mono>: Full Hinting and NO Anti-aliasing
[B<-B>|B<--font-smoothing-threshold> I<size>]
[B<-B>|B<--font-smoothing-threshold> I<size>]
[B<-P>|B<--pango-markup>]
[B<-P>|B<--pango-markup>]
-All text in rrdtool is rendered using Pango. With the B<--pango-markup> option, all
+All text in RRDtool is rendered using Pango. With the B<--pango-markup> option, all
text will be processed by pango markup. This allows to embed some simple html
like markup tags using
text will be processed by pango markup. This allows to embed some simple html
like markup tags using
@@ -418,15 +437,15 @@ Apart from the verbose syntax, there are also the following short tags available
tt Monospace font
u Underline
tt Monospace font
u Underline
-More details on L<http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html>.
+More details on L<http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
[B<-G>|B<--graph-render-mode> {B<normal>,B<mono>}]
There are 2 render modes:
[B<-G>|B<--graph-render-mode> {B<normal>,B<mono>}]
There are 2 render modes:
-B<normal>: Graphs are fully Antialiased (default)
+B<normal>: Graphs are fully Anti-aliased (default)
-B<mono>: No Antialiasing
+B<mono>: No Anti-aliasing
[B<-E>|B<--slope-mode>]
[B<-E>|B<--slope-mode>]
@@ -434,7 +453,7 @@ RRDtool graphs are composed of stair case curves by default. This is in line wit
the way RRDtool calculates its data. Some people favor a more 'organic' look
for their graphs even though it is not all that true.
the way RRDtool calculates its data. Some people favor a more 'organic' look
for their graphs even though it is not all that true.
-[B<-a>|B<--imgformat> B<PNG>|B<SVG>|B<EPS>|B<PDF>]
+[B<-a>|B<--imgformat> B<PNG>|B<SVG>|B<EPS>|B<PDF>|B<XML>|B<XMLENUM>|B<JSON>|B<JSONTIME>|B<CSV>|B<TSV>|B<SSV>]
Image format for the generated graph. For the vector formats you can
choose among the standard Postscript fonts Courier-Bold,
Image format for the generated graph. For the vector formats you can
choose among the standard Postscript fonts Courier-Bold,
Helvetica-BoldOblique, Helvetica-Oblique, Helvetica, Symbol,
Times-Bold, Times-BoldItalic, Times-Italic, Times-Roman, and ZapfDingbats.
Helvetica-BoldOblique, Helvetica-Oblique, Helvetica, Symbol,
Times-Bold, Times-BoldItalic, Times-Italic, Times-Roman, and ZapfDingbats.
+For Export type you can define
+XML, XMLENUM (enummerates the value tags <v0>,<v1>,<v2>,...),
+JSON, JSONTIME (adds a timestamp to each data row),
+CSV (=comma separated values), TSV (=tab separated values), SSV (=semicolon separated values),
+(for comma/tab/semicolon separated values the time format by default is in the form of unix time. to change it to something else use: --x-grid MINUTE:10:HOUR:1:HOUR:4:0:"%Y-%m-%d %H:%M:%S")
+
[B<-i>|B<--interlaced>]
(this gets ignored in 1.3 for now!)
[B<-i>|B<--interlaced>]
(this gets ignored in 1.3 for now!)
B<VDEF:>I<vname>B<=>I<RPN expression>
B<VDEF:>I<vname>B<=>I<RPN expression>
-You need at least one B<DEF> statement to generate anything. The
-other statements are useful but optional.
+You need at least one B<DEF> and one B<LINE>, B<AREA>, B<GPRINT>, B<PRINT>
+statement to generate anything useful.
+
See L<rrdgraph_data> and L<rrdgraph_rpn> for the exact format.
NOTE: B<Graph and print elements>
See L<rrdgraph_data> and L<rrdgraph_rpn> for the exact format.
NOTE: B<Graph and print elements>
=head2 graphv
=head2 graphv
-Calling rrdtool with the graphv option will return information in the
-rrdtool info format. On the command line this means that all output will be
+Calling RRDtool with the graphv option will return information in the
+RRDtool info format. On the command line this means that all output will be
in key=value format. When used from the Perl and Ruby bindings a hash
pointer will be returned from the call.
in key=value format. When used from the Perl and Ruby bindings a hash
pointer will be returned from the call.