Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 0de25710ba4c6e6de1469fffdf6c5288 > files > 17

perl-RRD-Simple-1.44-9.fc15.noarch.rpm

#!/usr/bin/perl -w
############################################################
#
#   $Id: graph2.pl 965 2007-03-01 19:11:23Z nicolaw $
#   graph2.pl - Example script bundled as part of RRD::Simple
#
#   Copyright 2005,2006 Nicola Worthington
#
#   Licensed under the Apache License, Version 2.0 (the "License");
#   you may not use this file except in compliance with the License.
#   You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
#   Unless required by applicable law or agreed to in writing, software
#   distributed under the License is distributed on an "AS IS" BASIS,
#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#   See the License for the specific language governing permissions and
#   limitations under the License.
#
############################################################

use strict;
use lib qw(../lib/ ./lib/);
use RRD::Simple 1.35;

my $rrdfile = 'graph2.rrd';
my $end = time();
my $start = $end - (60 * 60 * 24 * 31);
my @ds = qw(nicola hannah jennifer hedley heather baya);

# A salt offset for putting random shit in as the data points later
my %offset = (map { $_ => (index("@ds",$_) * 2) } @ds);

# Make a new object
my $rrd = RRD::Simple->new();

unless (-f $rrdfile) {
	$rrd->create($rrdfile,
			map { $_ => 'GAUGE' } @ds
		);

	for (my $t = $start; $t <= $end; $t += 300) {
		$rrd->update($rrdfile,$t,
				# Put any old random crap in as the data points :)
				map { $_ => cos( (($t+($offset{$_}*500))/20000)-($offset{$_}*10) )
							* (100-$offset{$_}) } @ds
			);
	}
}

# Graph the data
$rrd->graph($rrdfile,
		'title' => 'Random Graph of Some People',
		'vertical-label' => 'Weirdness',
		'line-thickness' => 2,
		'extended-legend' => 1,
	);