Example #1
0
 private function _generateUserDistributionGraph()
 {
     $graph = new Graph();
     $graph->setMargin(10);
     $graph->setTextDirection('horizontal');
     // Get highest ID
     $query = "\n\t\t\tSELECT\n\t\t\t\tMAX(id)\n\t\t\tFROM\n\t\t\t\tusers\n\t\t\t";
     $max_id = $this->_db->getOne($query);
     $data = array();
     for ($i = 0; $i < $max_id; $i += 1000000) {
         $query = "\n\t\t\t\tSELECT\n\t\t\t\t\tCOUNT(*)\n\t\t\t\tFROM\n\t\t\t\t\tusers\n\t\t\t\tWHERE\n\t\t\t\t\tid BETWEEN {$i} AND ({$i} + 999999)\n\t\t\t\t";
         $num_users = $this->_db->getOne($query);
         $data[] = array('label' => $i / 1000000 . '.x million', 'value' => $num_users);
     }
     $graph->setData($data);
     $graph->saveTo('r/d/user-distribution.png');
 }