[rrd-developers] Re: some questions on future features of rrdtool

Alex van den Bogaerdt alex at slot.hollandcasino.nl
Fri Jan 12 01:47:55 MET 2001

Chris Fedde wrote:

>  | Are there any plans for making pie charts with RRD, 2D and 3D ?

I do recall some mentioning of this either on the list or somewhere
in the docs.  Perhaps I'm remembering about polar charts so I may
be mistaking.

> In my opinion this would be a mistake.  Isometric extrusiuons of
> 2d charts add no new information while making the data harder to
> understand.  If you need 3d charts you can use fetch to dump the
> data from the rrd and import it into a graphic design tool.

3D might just improve visibility a bit when using series of AREA.
It would also be nice to have for pie charts as it can be used as
an extra dimension (if needed) or just to improve visual attraction
for the viewer.

> How do you propose representing time series data in a pie chart?

I can think of one good reason: one doesn't always need to see the
data sequentially.  For instance, I would be interested in viewing
packet sizes as an percentage.  I do not necessarily want to know
when the large packets are sent.  In a pie chart, this can be made
visible much more clearly than with the current available graph.
(so would an histogram by the way)

It could be something like

rrdtool graph pie.png --pie-chart --start end-2months \
	DEF:small=packetsize.rrd:range1:AVERAGE \
	DEF:medium=packetsize.rrd:range2:AVERAGE \
	DEF:large=packetsize.rrd:range3:AVERAGE \
	CDEF:totalSmall=small,SUM \
	CDEF:totalMedium=medium,SUM \
	CDEF:totalLarge=large,SUM \
	CDEF:total=totalSmall,totalMedium,totalLarge,+,+ \
	CDEF:percentageSmall=totalSmall,total,/ \
	CDEF:percentageMedium=totalMedium,total,/ \
	CDEF:percentageLarge=totalLarge,total,/ \
	PIE:percentageSmall#FF0000:small \
	PIE:percentageMedium#0000FF:medium \
	PIE:percentageSmall#00FF00:large \

Of course, this needs work.  However, AFAIK RRDtool was designed to
make these kind of extensions possible.

SUM would just represent the sum of all values over the interval. This
would also prove to be useful for billing purposes or similar.

That said, I think we would also need a more flexible way to specify
the time interval.  Maybe something in the line of:

		start="20010101 00:00":end="20010201 00:00"
		start="20010201 00:00":end="20010301 00:00"
	PIE:consumption01#00FF00:"Total bytes inbound for Januari"
	PIESTACK:overload01#FF0000:"Amount above CIR for Januari"
	PIE:consumption02#00FF00:"Total bytes inbound for Februari"
	PIESTACK:overload02#FF0000:"Amount above CIR for Februari"

or even
	DEF:hour00=some.rrd:inOctets:AVERAGE:start="* 00:00":end="* 01:00"
	DEF:hour01=some.rrd:inOctets:AVERAGE:start="* 01:00":end="* 02:00"
	DEF:hour23=some.rrd:inOctets:AVERAGE:start="* 23:00":end="* 24:00"
where "*" means all dates.
This would give a nice picture of the average usage per hour.

> Again if you have more general graphing needs use fetch and laod
> the data into a more general graphing tool.

That can be said about *everything* we do with RRDtool.  The program
itself is innovation so don't try to stop innovation/progress.

 / alex at slot.hollandcasino.nl                  alex at ergens.op.het.net \
| work                                                         private |
| My employer is capable of speaking therefore I speak only for myself |
| Technical questions sent directly to me will be nuked. Use the list. | 
| http://faq.mrtg.org/                                                 |
| http://rrdtool.eu.org  --> tutorial                                  |

Unsubscribe mailto:rrd-developers-request at list.ee.ethz.ch?subject=unsubscribe
Help        mailto:rrd-developers-request at list.ee.ethz.ch?subject=help
Archive     http://www.ee.ethz.ch/~slist/rrd-developers
WebAdmin    http://www.ee.ethz.ch/~slist/lsg2.cgi

More information about the rrd-developers mailing list