require_once 'OFC/OFC_Chart.php'; // generate some random data srand((double) microtime() * 1000000); $data_1 = array(); $data_2 = array(); $data_3 = array(); for ($i = 0; $i < 9; $i++) { $data_1[] = rand(1, 6); $data_2[] = rand(7, 13); $data_3[] = rand(14, 19); } $line_dot = new OFC_Charts_Line_Dot(); $line_dot->set_width(4); $line_dot->set_colour('#DFC329'); $line_dot->set_dot_size(5); $line_dot->set_values($data_1); $line_hollow = new OFC_Charts_Line_Hollow(); $line_hollow->set_width(1); $line_hollow->set_colour('#6363AC'); $line_hollow->set_dot_size(5); $line_hollow->set_values($data_2); $line = new OFC_Charts_Line(); $line->set_width(1); $line->set_colour('#5E4725'); $line->set_dot_size(5); $line->set_values($data_3); $y = new OFC_Elements_Axis_Y(); $y->set_range(0, 20, 5); $chart = new OFC_Chart(); $chart->set_title(new OFC_Elements_Title('Three lines example')); $chart->set_y_axis($y);
$data_2[] = sin($i) * 1.9 + 10; $data_3[] = sin($i) * 1.9 + 4; // just show to two decimal places // in our labels: //$labels[] = number_format($tmp,2); } $title = new OFC_Elements_Title(date("D M d Y")); $line_1 = new OFC_Charts_Line_Dot(); $line_1->set_values($data_1); $line_1->set_halo_size(0); $line_1->set_width(2); $line_1->set_dot_size(4); $line_2 = new OFC_Charts_Line_Dot(); $line_2->set_values($data_2); $line_2->set_halo_size(1); $line_2->set_width(1); $line_2->set_dot_size(4); $line_3 = new OFC_Charts_Line_Dot(); $line_3->set_values($data_3); $line_3->set_halo_size(1); $line_3->set_width(6); $line_3->set_dot_size(4); $y = new OFC_Elements_Axis_Y(); $y->set_range(0, 15, 5); $chart = new OFC_Chart(); $chart->set_title($title); $chart->add_element($line_1); $chart->add_element($line_2); $chart->add_element($line_3); $chart->set_y_axis($y); echo $chart->toPrettyString();
private function createGraph(Gpf_Chart_DataRecordSet $data) { if ($this->chartType == Gpf_Rpc_Chart::CHART_TYPE_LINE_DOT && $this->data1->getSize() > 150) { $this->chartType = Gpf_Rpc_Chart::CHART_TYPE_LINE; } switch ($this->chartType) { case Gpf_Rpc_Chart::CHART_TYPE_AREA: if ($data->getSize() > 40) { $areaGraph = new OFC_Charts_Area_Line(); } else { $areaGraph = new OFC_Charts_Area_Hollow(); } $areaGraph->set_width(3); $areaGraph->set_dot_size(3); $areaGraph->set_colour($data->getColor()); $areaGraph->set_key($data->getName(), 10); $areaGraph->set_values($data->getValues()); $areaGraph->set_tooltip($data->getTooltip()); return $areaGraph; case Gpf_Rpc_Chart::CHART_TYPE_BAR_OUTLINE: $barGraph = new OFC_Charts_Bar(); $barGraph->set_alpha(50); $barGraph->set_colour($data->getColor()); $barGraph->set_key($data->getName(), 10); $barGraph->set_values($data->getValues()); $barGraph->set_tooltip($data->getTooltip()); return $barGraph; case Gpf_Rpc_Chart::CHART_TYPE_LINE_DOT: $lineDotGraph = new OFC_Charts_Line_Dot(); $lineDotGraph->set_width(3); $lineDotGraph->set_dot_size(3); $lineDotGraph->set_colour($data->getColor()); $lineDotGraph->set_key($data->getName(), 10); $lineDotGraph->set_values($data->getValues()); $lineDotGraph->set_tooltip($data->getTooltip()); return $lineDotGraph; default: $lineGraph = new OFC_Charts_Line(); $lineGraph->set_width(3); $lineGraph->set_dot_size(3); $lineGraph->set_colour($data->getColor()); $lineGraph->set_key($data->getName(), 10); $lineGraph->set_values($data->getValues()); $lineGraph->set_tooltip($data->getTooltip()); return $lineGraph; } }