我正在尝试使用chartjs制作饼图,以显示数据库中的几乎所有数据。它的作用是计算数据库中某个单词的使用次数,并将该计数用作值和单词作为名称。
在我的饼图中,我有近10个值约为饼图的0.01%,我正试图将其删除。
有人有什么想法吗?
谷歌搜索这个看起来似乎没有那么受欢迎也不受支持,使用别的东西会更合理吗?
编辑:
cakephp MODEL:
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."}, ";
}
?>
];
答案 0 :(得分:0)
我认为您需要在调用chartjs之前过滤数据集以创建图表。有没有理由不这样做?
答案 1 :(得分: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."}, ";
}
}
?>
];