2014-02-16 42 views
0

我一直在搞不同的可视化插件,它允许您以图表的形式表示数据..并且遵循我的previous post,它看起来有点过时了,出于绝望,我寻找可能提供的其他插件类似的选项。如何在CakePHP中使用GoogleCharts插件?

现在,我已经意识到googleCharts可能只是我需要的东西,事实证明,有一个cake googlechart plugin应该能够做我所需要的。但是,我在理解如何实现它方面遇到了一些麻烦。

从我看到的here和插件文档中,它接受以结果数组的形式存在的数据,然后迭代该数据,并显示与列键中指定的匹配的字段。 (如果我不正确,请做解释。)

否则,我正在寻找一种方法,我可以使用如下3个查询返回的值生成饼图:

 $users_donor = $this->User->find('count' , array(
      'conditions' => array('User.role' => 'donor') 
     )); 

     $users_staff = $this->User->find('count' , array(
      'conditions' => array('User.role' => 'staff') 
     )); 
     $users_admin = $this->User->find('count' , array(
      'conditions' => array('User.role' => 'admin') 
     )); 

基本上我想显示所有当前的注册用户,通过他们的角色分组的可视化表示..有一个方法可以让我在后3个计数值传递(即users_donorusers_staffusers_admin

回答

1

我不得不向后觉得这个一。问题在于我仍然试图使用我在previous post中提到的另一个插件中使用的代码(即,我正在检索单独变量中的计数值。)

正如您可能已经猜到的,所有我需要做的就是检索数组中使用cakePHP查询方法执行SQL查询和groupBy角色的相同信息!

这就是:

$results = $this->User->query(
     "SELECT users.role as user_role, 
      Count(users.role) AS user_count 
      FROM users 
      GROUP BY users.role" 
     ); 

让我把这个结果数组连同googleCharts插件!