====== Pxxo_Widgets_ImageGraph ====== Ce petit widget permet de tracer des graphiques à partir d'une liste de points. Il est basé sur la package pear Image_Graph et permet si besoin de passer un instance d'un objet Image_Graph si on désire tracer des graph complexes. * [[http://demo.pxxo.net/widgets/demos/ImageGraph/|Exemple d'utilisation en ligne]] * [[fr:install|Installer]] Voila un exemple de ce qu'est capable de faire Image_Graph : {{http://pear.veggerby.dk/images/samples/full/datapreprocessor_1.4.png}} Plein d'exemple de graphiques complexes avec code php se trouvent sur [[http://pear.veggerby.dk/samples/|ce site]]. Ce [[http://www.phpbuilder.com/columns/ian_gilfillan20060613.php3|petit tutoriel]] peux également vous aider à construire votre graphique. ===== Paramètres ===== ^ Nom ^ Valeur par défaut ^ Description ^ | title | 'mon graphique' | Le titre du graphique | | width | 800 | Largeur en pixel du graphique | | height | 600 | Hauteur en pixel du graphique | | points | array( array('Janvier',10), ...); | Liste des points à tracer (liste de couples X,Y) | | color | 'red' | La couleur du graphique | | plottype | 'bar' | Le type de graphique. Les valeurs possibles sont : bar, line, smooth_area, area, ou step | ===== Exemples ===== En utilisant les paramètres simplifiés du widget : $params = array(); $params['title'] = 'Graphique personnalisé'; $params['width'] = 400; $params['height'] = 300; $params['points'] = array( array('10h', 47), array('11h', 42), array('12h', 32), array('13h', 39), array('14h', 25) ); $params['color'] = 'black'; $params['plottype'] = 'smooth_area'; // bar | line | smooth_area | area | step $o = new Pxxo_Widgets_ImageGraph($params); En passant une instance de Image_Graph pour créer des graphiques complexes : // exemple tiré de http://pear.veggerby.dk/samples/ require_once 'Image/Graph.php'; // create the graph $Graph =& Image_Graph::factory('graph', array(400, 300)); $Graph->add( Image_Graph::vertical( Image_Graph::factory('title', array('Stacked Area Chart Sample', 12)), Image_Graph::vertical( $Plotarea = Image_Graph::factory('plotarea'), $Legend = Image_Graph::factory('legend'), 90 ), 5 ) ); $Legend->setPlotarea($Plotarea); // create the dataset $Datasets = array( Image_Graph::factory('random', array(10, 2, 15, true)), Image_Graph::factory('random', array(10, 2, 15, true)), Image_Graph::factory('random', array(10, 2, 15, true)) ); // create the 1st plot as smoothed area chart using the 1st dataset $Plot =& $Plotarea->addNew('Image_Graph_Plot_Area', array($Datasets, 'stacked')); // set a line color $Plot->setLineColor('gray'); $FillArray =& Image_Graph::factory('Image_Graph_Fill_Array'); $FillArray->addColor('blue@0.2'); $FillArray->addColor('yellow@0.2'); $FillArray->addColor('green@0.2'); // set a standard fill style $Plot->setFillStyle($FillArray); $params = array(); $params['title'] = 'Graphique créé directement par PEAR/ImageGraph'; $params['pear_image_graph'] =& $Graph; $o = new Pxxo_Widgets_ImageGraph($params);