/** * constructor * * @param array $values data array * @access public */ function XooNIpsGraphDataBrushLine($values) { parent::XooNIpsGraphData(); $this->values =& $values; $this->data_type = 'brush'; $this->setPoint('none'); }
/** * draw graph (private) * * @access private * @param array &$xdata X data * @param array &$ydata Y data * @param string $title graph title * @param string $xlabel X label * @param string $mode query type */ function _xoonips_eventlog_graph_draw(&$xdata, &$ydata, $title, $xlabel, $mode) { // load graph library include_once dirname(dirname(__FILE__)) . '/class/base/graph.class.php'; $unicode =& xoonips_getutility('unicode'); // count number of data $num = count($ydata); // create graph object $xgraph = new XooNIpsGraph(500, 400); // initilize parameters $xgraph->setAxisGrid('x', 'none'); $xgraph->setAxisGridLines('y', 6); $xgraph->frame->setType('axis'); $xgraph->setTitle($unicode->encode_utf8($title)); $xgraph->axis['bottom']->setLabel($unicode->encode_utf8($xlabel)); switch ($mode) { case 'month': // hide x ticks if ($num > 24) { $xgraph->setAxisTicksColor('x', 'none'); } // rotate x tick labels if ($num > 6) { $xgraph->setAxisAngle('x', 60); } // set x tick interval if ($num < 24) { $xinterval = 1; } else { if ($num < 60) { $xinterval = 4; } else { $xinterval = 12; } } $xgraph->axis['bottom']->setTickInterval($xinterval); // create y data $xgraph_data = new XooNIpsGraphDataBar($ydata); $xgraph_data->setBarSize(0.5); $xgraph->setXAxisOffset(0.5); $xgraph_data->setColor('red'); break; case 'day': case 'total': // hide x ticks if ($num > 70) { $xgraph->setAxisTicksColor('x', 'none'); } // rotate x tick labels if ($num > 130) { $xgraph->setAxisAngle('x', 60); } // set x tick interval if ($num < 32) { $xinterval = 3; } else { if ($num < 70) { $xinterval = 5; } else { $xinterval = 1; } } $xgraph->axis['bottom']->setTickInterval($xinterval); // create y data $xgraph_data = new XooNIpsGraphDataLine($ydata); $xgraph_data->setColor('blue'); $xgraph_data->setShadowColor('none'); break; case 'domain': // create y data $xgraph_data = new XooNIpsGraphDataBar($ydata); $xgraph_data->setBarSize(0.5); $xgraph->setXAxisOffset(0.5); $xgraph_data->setColor('green'); break; } // set x tick labels $xgraph->setXData($xdata); // add y data and set prefered maximum/minimum y axis range $xgraph->addYData($xgraph_data); $xgraph->setPreferedYAxisRange(); // draw $xgraph->draw(); }