#!/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,
);