1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | <?php /*// most interesting SELECT sum(heuristic_value) as sum, CNID FROM `heuristic_results` group by CNID order by sum DESC limit 30 // spread of values select floor(sum) as val,count(*) from (SELECT sum(heuristic_value) as sum FROM heuristic_results group by CNID) as a group by val*/ /* CAT:Spline chart */ /* pChart library inclusions */ include("../lib/pChart2.1.0/class/pData.class.php"); include("../lib/pChart2.1.0/class/pDraw.class.php"); include("../lib/pChart2.1.0/class/pImage.class.php"); $labels = Array(); $values = Array(); include_once("../lib/common.inc.php"); $query = "select floor(sum) as val,count(*) from (SELECT sum(heuristic_value) as sum FROM heuristic_results group by CNID) as a group by val"; $result = mysql_query($query); if (!$result) echo mysql_error().$query; while ($r = mysql_fetch_array($result, MYSQL_BOTH)) { $labels[] = $r[0]; $values[] = $r[1]; } /* Create and populate the pData object */ $MyData = new pData(); $MyData->addPoints($values,"Records"); $MyData->setAxisName(0,"# of records"); $MyData->addPoints($labels,"Labels"); $MyData->setSerieDescription("Labels","Bins"); $MyData->setAbscissa("Labels"); /* Create the pChart object */ $myPicture = new pImage(700,230,$MyData); /* Turn of Antialiasing */ $myPicture->Antialias = FALSE; /* Add a border to the picture */ $myPicture->drawRectangle(0,0,699,229,array("R"=>0,"G"=>0,"B"=>0)); /* Write the chart title */ $myPicture->setFontProperties(array("FontName"=>"../lib/pChart2.1.0/fonts/Forgotte.ttf","FontSize"=>11)); $myPicture->drawText(150,35,"Record distribution",array("FontSize"=>20,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); /* Set the default font */ $myPicture->setFontProperties(array("FontName"=>"../lib/pChart2.1.0/fonts/pf_arma_five.ttf","FontSize"=>6)); /* Define the chart area */ $myPicture->setGraphArea(60,40,650,200); /* Draw the scale */ $scaleSettings = array("XMargin"=>10,"YMargin"=>0,"Floating"=>TRUE,"GridR"=>200,"GridG"=>200,"GridB"=>200,"DrawSubTicks"=>TRUE,"CycleBackground"=>TRUE); $myPicture->drawScale($scaleSettings); /* Turn on Antialiasing */ $myPicture->Antialias = TRUE; /* Draw the line chart */ $myPicture->drawSplineChart(); /* Write the chart legend */ $myPicture->drawLegend(540,20,array("Style"=>LEGEND_NOBORDER,"Mode"=>LEGEND_HORIZONTAL)); /* Render the picture (choose the best way) */ $myPicture->autoOutput("pictures/example.drawSplineChart.simple.png"); ?> |