public function testRemoveSeries() { $data = new pData(); $data->addPoint(array(1, 2), 'testseries1'); $data->addPoint(array(3, 4), 'testseries2'); $data->addSeries('testseries1'); $data->addSeries('testseries2'); $this->assertEquals(array('Position' => 'Name', 'Format' => array('X' => 'number', 'Y' => 'number'), 'Unit' => array('X' => null, 'Y' => null), 'Values' => array('testseries1', 'testseries2')), $data->getDataDescription()); $data->removeSeries('testseries1'); $this->assertEquals(array('Position' => 'Name', 'Format' => array('X' => 'number', 'Y' => 'number'), 'Unit' => array('X' => null, 'Y' => null), 'Values' => array(1 => 'testseries2')), $data->getDataDescription()); }
public function testRemoveSeries() { $data = new pData(); $data->addPoints(array(1, 2), 'testseries1'); $data->addPoints(array(3, 4), 'testseries2'); $data->addSeries('testseries1'); $data->addSeries('testseries2'); $this->assertEquals(array('testseries1', 'testseries2'), $data->getDataDescription()->values); $this->assertEquals(null, $data->getDataDescription()->description); $data->removeSeries('testseries1'); $this->assertEquals(array(1 => 'testseries2'), $data->getDataDescription()->values); }
/** * Draws a line or bargraph depending on the number of data points * * @param string $title the graph's title * @param array $axis the axis points * @param array $labels the labels for the datasets * @param array $datasets any number of data arrays */ private function accessgraph($title, $axis, $labels, $datasets) { if (!count($axis)) { $this->nograph($title . ': no data'); return; } // add the data and labels $DataSet = new pData(); foreach ($datasets as $num => $set) { $DataSet->AddPoints($set, "series{$num}"); $DataSet->SetSeriesName($labels[$num], "series{$num}"); } // setup axis $DataSet->AddPoints($axis, 'times'); $DataSet->AddAllSeries(); $DataSet->SetAbscissaLabelSeries('times'); $DataSet->removeSeries('times'); $DataSet->removeSeriesName('times'); $Canvas = new GDCanvas(600, 300, false); $Chart = new pChart(600, 300, $Canvas); $usebargraph = count($axis) < 10; $Chart->setFontProperties(dirname(__FILE__) . '/../pchart/Fonts/DroidSans.ttf', 8); $Chart->setGraphArea(50, 40, 500, 200); $Chart->drawScale($DataSet, new ScaleStyle(SCALE_NORMAL, new Color(127)), 45, 1, $usebargraph); if ($usebargraph) { $Chart->drawBarGraph($DataSet->GetData(), $DataSet->GetDataDescription()); } else { $Chart->drawLineGraph($DataSet->GetData(), $DataSet->GetDataDescription()); } $Chart->drawLegend(500, 40, $DataSet->GetDataDescription(), new Color(250)); $Chart->setFontProperties(dirname(__FILE__) . '/../pchart/Fonts/DroidSans.ttf', 12); $Chart->drawTitle(10, 10, $title, new Color(0), 590, 30); $Chart->Render(null); }