Code

a patch to avoid a memory leak and a Makefile.am patch to
[rrdtool-all.git] / program / doc / rrdgraph_graph.src
1 =include name
3 =head1 SYNOPSYS
5 =over 4
7 =item B<to be deprecated commands>
9 =over 4
11 =item B<PRINT> : I<vname> : I<CF> : I<format>
13 =item B<GPRINT> : I<vname> : I<CF> : I<format>
15 =item B<HRULE> : I<value> # I<color> [ :I<legend> ]
17 =item B<STACK> : I<vname> # I<color> [ :I<legend> ]
19 =back
21 =item B<available commands>
23 =over 8
25 =item B<PRINT> : I<vname> : I<format>
27 =item B<GPRINT> : I<vname> : I<format>
29 =item B<COMMENT> : I<text>
31 =item B<VRULE> : I<vname> # I<color> [ : I<legend> ]
33 =item B<LINE>{I<width>} : I<vname> # I<color> [ : I<legend> ] [ : STACK ]
35 =item B<AREA> C<:> I<vname> C<#> I<color> [ C<:> I<legend> ] [ C<:> C<STACK> ]
37 =item B<PART> : I<vname> B<#> I<rrggbbaa> [ B<:> I<legend> ]
39 =item B<TICK> : I<vname> B<#> I<rrggbbaa> [ : I<fraction> [ : I<legend> ] ]
41 =back
43 =item B<to be implemented commands>
45 =over 8
47 =item B<SHIFT> : I<vname> , I<offset>
49 =back
51 =back
53 =head1 DESCRIPTION
55 These instructions allow you to generate your image or report.
56 If you don't use any graph elements, no graph is generated.
57 Similarly no report is generated if you don't use print options.
59 =head1 PRINT
61 =over 4
63 =item B<PRINT> : I<vname> : I<CF> : I<format>
65 I<Deprecated. Use the new form of this command in new scripts.>
66 The first form of this command is to be used with B<CDEF> I<vname>s.
68 =item B<PRINT> : I<vname> : I<format>
70 Depending on the context, either the value component or the time
71 component of a B<VDEF> is printed using I<format>. It is an error
72 to specify a I<vname> generated by a B<DEF> or B<CDEF>.
74 Any text in I<format> is printed literally with one exception:
75 The percent character introduces a formatter string. This string
76 can be:
78 For printing values:
80 =over 4
82 =item *
84 B<%%> just prints a literal '%' character
86 =item *
88 B<%#.#le> prints like 1.2346e+04. Optional numbers # are field width and
89 decimal precision
91 =item *
93 B<%#.#lf> prints like 12345.6789, with optional field width and precision
95 =item *
97 B<%s> place this after B<%le>, B<%lf> or B<%lg>. This will be replaced by the
98 appropriate SI magnitude unit and the value will be scaled
99 accordingly (123456 -> 123.456 k)
101 =item *
103 B<%S> is similar to B<%s>. It does however use a previously defined
104 magnitude unit. If there is no such unit yet, it tries to define
105 one (just like B<%s>). However, if the value is zero, the magnitude
106 unit stays undefined. Thus, formatter strings using B<%S> and no B<%s>
107 will all use the same magnitude unit except for zero values.
109 =back
111 For printing times:
113 =over 4
115 =item *
117 B<%%> just prints a literal '%' character
119 =item *
121 B<%a, %A> prints abbreviated, full weekday name
123 =item *
125 B<%b, %B> prints abbreviated, full month name
127 =item *
129 B<%d, %m, %y, %H, %M, %S> day,month,year,hour,minute,second all in two-digit format
131 =item *
133 B<%Y> year in 4-digit format
135 =item *
137 B<%I, %p>  hour (01..12), 'am' or 'pm'
139 =item *
141 B<%j, %w> day of the week (0..6), day of the year (1..366)
143 =item *
145 B<%c, %x, %X> date+time, date, time
147 =item *
149 B<%U, %W> week number of the current year with either the first sunday or
150 the first monday determining the first week
152 =item *
154 B<%Z> time zone
156 =back
158 =back
160 =head1 GRAPH
162 =over 4
164 =item B<GPRINT> : I<vname> : I<CF> : I<format>
166 I<Deprecated. Use the new form of this command in new scripts.>
167 This is the same as C<PRINT> but now it is printed inside the graph.
169 =item B<GPRINT> : I<vname> : I<format>
171 This is the same as C<PRINT> but now it is printed inside the graph.
173 =item B<COMMENT> : I<text>
175 Text is printed literally in the legend section of the graph
177 =item B<HRULE> : I<value> # I<color> [ :I<legend> ]
179 Draw an horizontal line at I<value>. Its color is composed from three
180 hexadecimal numbers specifying the color components (00 is off, FF is
181 maximum) red, green and blue.  Optionally a legend box and string is
182 printed in the legend section. I<value> can be a variable from a B<VDEF>.
183 It is an error to use I<vname>s from B<DEF> or B<CDEF> here.
185 =item B<VRULE> : I<vname> # I<color> [ : I<legend> ]
187 Draw a vertical line at I<time>.  Its color is composed from three
188 hexadecimal numbers specifying the color components (00 is off, FF is
189 maximum) red, green and blue.  Optionally a legend box and string is
190 printed in the legend section. I<time> may be a number or a variable
191 from a B<VDEF>. It is an error to use I<vname>s from B<DEF> or B<CDEF> here.
193 =item B<LINE>{I<width>} : I<vname> # I<color> [ : I<legend> ] [ : STACK ]
195 Draw a line of the specified width into the graph. If the color
196 is not specified, the drawing is done 'blind'.  This is useful when
197 stacking something else on top of this line. Also optional is the
198 legend box and string which will be printed in the legend section
199 if specified. The B<vname> can be generated by B<DEF>, B<VDEF> and
200 B<CDEF>.  If the optional B<STACK> modifier is used, this line is
201 stacked on top of the previous element which can be a B<LINEx> or
202 an B<AREA>
204 =item B<AREA> C<:> I<vname> C<#> I<color> [ C<:> I<legend> ] [ C<:> C<STACK> ]
206 See B<LINE>, however the area between the x-axis and the line will
207 also be filled.
209 =item B<STACK> : I<vname> # I<color> [ :I<legend> ]
211 I<Deprecated.  Use the B<STACK> modifiers on the other commands.>
212 I<Note: the comments on stacking are still valid...>
213 Repeats the last B<LINEx> or B<AREA> however it doesn't start at the
214 x-axis but rather on top of the previous element. This implies that
215 there needs to be something to stack on. An invisible B<LINEx> or
216 B<AREA> is something you can stack on, an unknown value is not!
218 Note: When you stack on something that was I<unknown>, the whole
219 stack will be I<unknown> for that point in time. If the beginning
220 is undefined, there's no way to end somewhere...  If you want to
221 graph this stacked variable anyway you need to make sure that the
222 B<LINEx> or B<AREA> it gets stacked on is not unknown. Use a CDEF
223 instruction with B<IF> and B<UN> to do so.
225 =item B<PART> : I<vname> B<#> I<rrggbbaa> [ B<:> I<legend> ]
227 B<RRDtool> has now support for B<pie charts>. If you include the
228 B<PART> command, the canvas is extended to make room for a chart
229 The size of the canvas is determined by the lesser of
230 L<width and height|rrdgraph/item_Size>.
232 Pie parts will be concatenated, the first one will start at the
233 top and parts will be created clockwise.  The size of the part
234 is defined by the value part of the L<VDEF|rrdgraph_data/VDEF>
235 function.  It should return a number between 0 and 100, being a
236 percentage.  Providing wrong input will produce undefined results.
238 =item B<TICK> : I<vname> B<#> I<rrggbbaa> [ : I<fraction> [ : I<legend> ] ]
240 Plot a tick mark (a vertical line) for each value of I<vname> that is
241 non-zero and not *UNKNOWN*. The I<fraction> argument specifies the
242 length of the tick mark as a fraction of the y-axis; the default value
243 is 0.1 (10% of the axis). Note that the color specification is not
244 optional.
246 =back
248 B<THE NEXT COMMAND IS NOT YET IMPLEMENTED>
250 =over 4
252 =item B<SHIFT> : I<vname> , I<offset>
254 Using this command B<RRDtool> will graph the following elements
255 with the specified offset.  For instance, you can specify an
256 offset of S<( 7*24*60*60 = ) 604800 seconds> to "look back" one
257 week. Make sure to notify the viewer you did so...
258 The offset will be valid until the next B<SHIFT> command, which
259 can have an offset of zero to restore normal graphing.
260 As with the other grapher elements, you can specify a number or
261 a variable here.
263 =back
265 =include see_also