0

我正在尝试使用 chartjs 制作饼图来显示数据库中的几乎所有数据。它所做的是计算某个单词在数据库中使用的次数,并将该计数用作值,并将单词用作名称。

在我的饼图中,我有近 10 个值,大约是饼图的 0.01%,我正在尝试删除它们。

有人有想法么?

此外,谷歌搜索这使得 chartjs 似乎不那么受欢迎也不​​受支持,使用其他东西会更合理吗?

编辑:

cakephp 型号:

function pieChart($conditions = null) {
    //Get Data for PieChart
    $this->RecordDrug->virtualFields['sum'] ='COUNT(*)';
    $records = array();
    $records=$this->RecordDrug->find('list',
        array(
            'conditions' => $conditions,
            'fields' => array( 'Drug.drug', 'sum'),
            'contain' => array( 'Drug', 'Record' ),
            'group'  => 'Drug.Drug'
            ));
    return $records;
}

控制器:

    $pieChart = $this->Record->pieChart();
    $this->set('output',$pieChart); 

看法:

   var pieChartDataSource = [
        <?php
        foreach($output as $compound => $sum){
          echo "{category: '".$compound."', value: ".$sum."}, ";
        }      
        ?>      
    ];
4

2 回答 2

0

我认为您需要在调用 chartjs 来创建图表之前过滤您的数据集。有什么理由不这样做吗?

于 2013-06-15T00:01:36.573 回答
0
$sumofvars=array_sum($output);
$above_percent=0.1;

    foreach($output as $compound => $sum){

$percentage_to_eliminate=($sum/$sumofvars)*100;

if ($percentage_to_eliminate>$above_percent)
{

 echo "{category: '".$compound."', value: ".$sum."}, ";

}

    }      
    ?>      
];
于 2013-06-15T00:19:18.723 回答