Heuristic ranking analysis
[contractdashboard.git] / heuristics / viewHeuristicsDistribution.php
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"); 
?>