1<?php
2/**
3 * Usage example for Image_Graph.
4 *
5 * Main purpose:
6 * Demonstrate gradient fillings
7 *
8 * Other:
9 * None specific
10 *
11 * $Id: gradient_step.php 192339 2005-08-03 21:22:11Z nosey $
12 *
13 * @package Image_Graph
14 * @author Jesper Veggerby <pear.nosey@veggerby.dk>
15 */
16
17require_once 'Image/Graph.php';
18require_once 'Image/Canvas.php';
19
20$Canvas =& Image_Canvas::factory('png',
21    array(
22        'width' => 400,
23        'height' => 200
24    )
25);
26
27
28// create the graph
29$Graph =& Image_Graph::factory('graph', $Canvas);
30
31$Font =& $Graph->addNew('font', 'Verdana');
32$Font->setSize(8);
33
34$Graph->setFont($Font);
35
36$Graph->add(
37    Image_Graph::vertical(
38        Image_Graph::factory('title', array('Gradient Filled Step Chart', 11)),
39        Image_Graph::horizontal(
40            $Plotarea = Image_Graph::factory('plotarea'),
41            Image_Graph::factory('title', array('Anybody recognize?', array('size' => 7, 'color' => 'gray@0.6', 'angle' => 270))),
42            98
43        ),
44    5)
45);
46
47$Grid =& $Plotarea->addNew('line_grid', array(), IMAGE_GRAPH_AXIS_Y);
48$Grid->setLineColor('white@0.4');
49
50$Dataset =& Image_Graph::factory('dataset');
51$Dataset->addPoint(1, 20);
52$Dataset->addPoint(2, 10);
53$Dataset->addPoint(3, 35);
54$Dataset->addPoint(4, 5);
55$Dataset->addPoint(5, 18);
56$Dataset->addPoint(6, 33);
57$Plot =& $Plotarea->addNew('step', array(&$Dataset));
58
59$Fill =& Image_Graph::factory('gradient', array(IMAGE_GRAPH_GRAD_VERTICAL, 'darkgreen', 'white'));
60$Plot->setFillStyle($Fill);
61
62$Fill =& Image_Graph::factory('gradient', array(IMAGE_GRAPH_GRAD_VERTICAL, 'yellow', 'darkred'));
63$Plotarea->setFillStyle($Fill);
64
65$AxisY =& $Plotarea->getAxis(IMAGE_GRAPH_AXIS_Y);
66$AxisY->forceMaximum(40);
67$AxisY->setLabelInterval(10);
68
69$Graph->setBackgroundColor('green@0.2');
70$Graph->setBorderColor('black');
71$Graph->setPadding(10);
72
73$Plot->setBorderColor('black');
74
75// output the graph
76$Graph->done();
77?>