Back to main site | Back to man page index

RRDGRAPH_GRAPH(1)                                      rrdtool                                      RRDGRAPH_GRAPH(1)



NAME
       rrdgraph_graph - rrdtool graph command reference

SYNOPSIS
       PRINT:vname:format

       GPRINT:vname:format

       COMMENT:text

       VRULE:time#color[:legend][:dashes[=on_s[,off_s[,on_s,off_s]...]][:dash-offset=offset]]

       HRULE:value#color[:legend][:dashes[=on_s[,off_s[,on_s,off_s]...]][:dash-offset=offset]]

       LINE[width]:value[#color][:[legend][:STACK][:skipscale][:dashes[=on_s[,off_s[,on_s,off_s]...]][:dash-offset=offset]]

       AREA:value[#color][:[legend][:STACK][:skipscale]]

       TICK:vname#rrggbb[aa][:fraction[:legend]]

       SHIFT:vname:offset

       TEXTALIGN:{left|right|justified|center}

       PRINT:vname:CF:format (deprecated)

       GPRINT:vname:CF:format (deprecated)

       STACK:vname#color[:legend] (deprecated)

DESCRIPTION
       These instructions allow you to generate your image or report.  If you don't use any graph elements, no graph
       is generated.  Similarly, no report is generated if you don't use print options.

   PRINT
       PRINT:vname:format[:strftime]

       Depending on the context, either the value component or the time component of a VDEF is printed using format.
       It is an error to specify a vname generated by a DEF or CDEF.

       Any text in format is printed literally with one exception: The percent character introduces a formatter
       string. This string can be:

       For printing values:

       %%  just prints a literal '%' character

       %#.#le
           prints numbers like 1.2346e+04. The optional integers # denote field width and decimal precision.

       %#.#lf
           prints numbers like 12345.6789, with optional field width and precision.

       %s  place this after %le, %lf or %lg. This will be replaced by the appropriate SI magnitude unit and the value
           will be scaled accordingly (123456 -> 123.456 k).


       %A  The full weekday name according to the current locale.

       %b  The abbreviated month name according to the current locale.

       %B  The full month name according to the current locale.

       %c  The preferred date and time representation for the current locale.

       %d  The day of the month as a decimal number (range 01 to 31).

       %H  The hour as a decimal number using a 24-hour clock (range 00 to 23).

       %I  The hour as a decimal number using a 12-hour clock (range 01 to 12).

       %j  The day of the year as a decimal number (range 001 to 366).

       %m  The month as a decimal number (range 01 to 12).

       %M  The minute as a decimal number (range 00 to 59).

       %p  Either `AM' or `PM' according to the given time value, or the corresponding strings for the current
           locale.  Noon is treated as `pm' and midnight as `am'.  Note that in many locales and `pm' notation is
           unsupported and in such cases %p will return an empty string.

       %s  The second as a decimal number (range 00 to 61).

       %S  The seconds since the epoch (1.1.1970) (libc dependent non standard!)

       %U  The  week  number  of  the current year as a decimal number, range 00 to 53, starting with the first
           Sunday as the first day of week 01. See also %V and %W.

       %V  The ISO 8601:1988 week number of the current year as a decimal number, range 01 to  53,  where week  1 is
           the first week that has at least 4 days in the current year, and with Monday as the first day of the week.
           See also %U and %W.

       %w  The day of the week as a decimal, range 0 to 6, Sunday being 0.  See also %u.

       %W  The week number of the current year as a decimal number, range 00 to  53,  starting  with  the first
           Monday as the first day of week 01.

       %x  The preferred date representation for the current locale without the time.

       %X  The preferred time representation for the current locale without the date.

       %y  The year as a decimal number without a century (range 00 to 99).

       %Y  The year as a decimal number including the century.

       %Z  The time zone or name or abbreviation.

       %%  A literal `%' character.

       PRINT:vname:CF:format


       COMMENT:text

       Text is printed literally in the legend section of the graph. Note that in RRDtool 1.2 you have to escape
       colons in COMMENT text in the same way you have to escape them in *PRINT commands by writing '\:'.

       VRULE:time#color[:legend][:dashes[=on_s[,off_s[,on_s,off_s]...]][:dash-offset=offset]]

       Draw a vertical line at time.  Its color is composed from three hexadecimal numbers specifying the rgb color
       components (00 is off, FF is maximum) red, green and blue followed by an optional alpha. Optionally, a legend
       box and string is printed in the legend section. time may be a number or a variable from a VDEF. It is an
       error to use vnames from DEF or CDEF here.  Dashed lines can be drawn using the dashes modifier. See LINE for
       more details.

       HRULE:value#color[:legend][:dashes[=on_s[,off_s[,on_s,off_s]...]][:dash-offset=offset]]

       Draw a horizontal line at value.  HRULE acts much like LINE except that will have no effect on the scale of
       the graph. If a HRULE is outside the graphing area it will just not be visible.

       LINE[width]:value[#color][:[legend][:STACK][:skipscale]][:dashes[=on_s[,off_s[,on_s,off_s]...]][:dash-offset=offset]]

       Draw a line of the specified width onto the graph. width can be a floating point number. If the color is not
       specified, the drawing is done 'invisibly'. This is useful when stacking something else on top of this line.
       Also optional is the legend box and string which will be printed in the legend section if specified. The value
       can be generated by DEF, VDEF, and CDEF.  If the optional STACK modifier is used, this line is stacked on top
       of the previous element which can be a LINE or an AREA.

       Normally the graphing function makes sure that the entire LINE or AREA is visible in the chart. The scaling of
       the chart will be modified accordingly if necessary. Any LINE or AREA can be excluded from this process by
       adding the option skipscale.

       The dashes modifier enables dashed line style. Without any further options a symmetric dashed line with a
       segment length of 5 pixels will be drawn. The dash pattern can be changed if the dashes= parameter is followed
       by either one value or an even number (1, 2, 4, 6, ...) of positive values. Each value provides the length of
       alternate on_s and off_s portions of the stroke. The dash-offset parameter specifies an offset into the
       pattern at which the stroke begins.

       When you do not specify a color, you cannot specify a legend.  Should you want to use STACK, use the
       "LINEx:<value>::STACK" form.

       AREA:value[#color][:[legend][:STACK][:skipscale]]

       See LINE, however the area between the x-axis and the line will be filled.

       TICK:vname#rrggbb[aa][:fraction[:legend]]

       Plot a tick mark (a vertical line) for each value of vname that is non-zero and not *UNKNOWN*. The fraction
       argument specifies the length of the tick mark as a fraction of the y-axis; the default value is 0.1 (10% of
       the axis). Note that the color specification is not optional. The TICK marks normally start at the lower edge
       of the graphing area. If the fraction is negative they start at the upper border of the graphing area.

       SHIFT:vname:offset

       Using this command RRDtool will graph the following elements with the specified offset.  For instance, you can

       Some notes on stacking

       When stacking, an element is not placed above the X-axis but rather on top of the previous element.  There
       must be something to stack upon.

       You can use an invisible LINE or AREA to stacked upon.

       An unknown value makes the entire stack unknown from that moment on.  You don't know where to begin (the
       unknown value) and therefore do not know where to end.

       If you want to make sure you will be displaying a certain variable, make sure never to stack upon the unknown
       value.  Use a CDEF instruction with IF and UN to do so.

NOTES on legend arguments
   Escaping the colon
       A colon ':' in a legend argument will mark the end of the legend. To enter a ':' as part of a legend, the
       colon must be escaped with a backslash '\:'.  Beware that many environments process backslashes themselves, so
       it may be necessary to write two backslashes in order to one being passed onto rrd_graph.

   String Formatting
       The text printed below the actual graph can be formatted by appending special escape characters at the end of
       a text. When ever such a character occurs, all pending text is pushed onto the graph according to the
       character specified.

       Valid markers are: \j for justified, \l for left aligned, \r for right aligned, and \c for centered. In the
       next section there is an example showing how to use centered formatting.

       \n is a valid alias for \l since incomplete parsing in earlier versions of RRDtool lead to this behavior and a
       number of people has been using it.

       Normally there are two space characters inserted between every two items printed into the graph. The space
       following a string can be suppressed by putting a \g at the end of the string. The \g also ignores any space
       inside the string if it is at the very end of the string. This can be used in connection with %s to suppress
       empty unit strings.

        GPRINT:a:MAX:%lf%s\g

       A special case is COMMENT:\s which inserts some additional vertical space before placing the next row of
       legends.

       If you want to have left and right aligned legends on the same line use COMMENT:\u to go one line back like
       this:

        COMMENT:left\l
        COMMENT:\u
        COMMENT:right\r

       There is also a 'nop' control for situations where you want a string to actually end in a backslash character
       sequence \.

        COMMENT:OS\2\.

       When using a proportional font in your graph, the tab characters or the sequence \t will line-up legend

           A font description string, such as "Sans Italic 12"; note that any other span attributes will override
           this description. So if you have "Sans Italic" and also a style="normal" attribute, you will get Sans
           normal, not italic.

       font_family
           A font family name

       face
           Synonym for font_family

       size
           Font size in 1024ths of a point, or one of the absolute sizes 'xx-small', 'x-small', 'small', 'medium',
           'large', 'x-large', 'xx-large', or one of the relative sizes 'smaller' or 'larger'. If you want to specify
           a absolute size, it's usually easier to take advantage of the ability to specify a partial font
           description using 'font_desc'; you can use font_desc='12.5' rather than size='12800'.

       style
           One of 'normal', 'oblique', 'italic'

       weight
           One of 'ultralight', 'light', 'normal', 'bold', 'ultrabold', 'heavy', or a numeric weight

       variant
           'normal' or 'smallcaps'

       stretch
           One of 'ultracondensed', 'extracondensed', 'condensed', 'semicondensed', 'normal', 'semiexpanded',
           'expanded', 'extraexpanded', 'ultraexpanded'

       foreground
           An RGB color specification such as '#00FF00' or a color name such as 'red'

       background
           An RGB color specification such as '#00FF00' or a color name such as 'red'

       underline
           One of 'none', 'single', 'double', 'low', 'error'

       underline_color
           The color of underlines; an RGB color specification such as '#00FF00' or a color name such as 'red'

       rise
           Vertical displacement, in 10000ths of an em. Can be negative for subscript, positive for superscript.

       strikethrough
           'true' or 'false' whether to strike through the text

       strikethrough_color
           The color of crossed out lines; an RGB color specification such as '#00FF00' or a color name such as 'red'

       fallback
           'true' or 'false' whether to enable fallback. If disabled, then characters will only be used from the
           closest matching font on the system. No fallback will be done to other fonts on the system that might
           contain the characters in the text. Fallback is enabled by default. Most applications should not disable
           One of 'natural', 'strong', 'line'.

       To save you some typing, there are also some shortcuts:

       b   Bold

       big Makes font relatively larger, equivalent to <span size="larger">

       i   Italic

       s   Strike through

       sub Subscript

       sup Superscript

       small
           Makes font relatively smaller, equivalent to <span size="smaller">

       tt  Monospace font

       u   Underline

SEE ALSO
       rrdgraph gives an overview of how rrdtool graph works.  rrdgraph_data describes DEF,CDEF and VDEF in detail.
       rrdgraph_rpn describes the RPN language used in the ?DEF statements.  rrdgraph_graph page describes all of the
       graph and print functions.

       Make sure to read rrdgraph_examples for tips&tricks.

AUTHOR
       Program by Tobias Oetiker <[email protected]>

       This manual page by Alex van den Bogaerdt <[email protected]> with corrections and/or additions by
       several people



1.4.8                                                 2013-05-23                                    RRDGRAPH_GRAPH(1)