Php 从饼图中删除0%
我无法从饼图中删除不需要的0%。此数字显示所有可用选项的总计百分比。如果一个选项没有任何值,根据一个过滤器,它会显示一个0%,我想删除它。我正在下面粘贴我的代码Php 从饼图中删除0%,php,jquery,codeigniter-3,pie-chart,chart.js,Php,Jquery,Codeigniter 3,Pie Chart,Chart.js,我无法从饼图中删除不需要的0%。此数字显示所有可用选项的总计百分比。如果一个选项没有任何值,根据一个过滤器,它会显示一个0%,我想删除它。我正在下面粘贴我的代码 function drawPieChart(versionStatusCanvas,on_hold, active, cancelled, activecount, onholdcount, cancelledcount) { var versionStatusData = [{ value: on_hold,
function drawPieChart(versionStatusCanvas,on_hold, active, cancelled,
activecount, onholdcount, cancelledcount) {
var versionStatusData = [{
value: on_hold,
color:"#444444",
label: "On Hold(" +onholdcount+")",
},
{
value: active,
color: "#72bb53",
label: "Active(" +activecount+")",
},
{
value: cancelled,
color: "#ff6624",
label: "Cancelled(" +cancelledcount+")",
}];
var versionStatusCanvas = document.getElementById("versionStatus");
var versionStatusCtx = versionStatusCanvas.getContext("2d");
var versionStatusChart = new Chart(versionStatusCtx).Pie(versionStatusData,{
animationSteps: 100,
animationEasing: 'easeInOutQuart',
showTooltips: false,
segmentShowStroke : false,
onAnimationProgress: drawSegmentValues
});
document.getElementById('version-status-legend').innerHTML =
versionStatusChart.generateLegend();
function drawSegmentValues(){
var radius = versionStatusChart.outerRadius;
var midX = versionStatusCanvas.width/2;
var midY = versionStatusCanvas.height/2
for(var i=0; i<versionStatusChart.segments.length; i++){
versionStatusCtx.fillStyle="white";
var textSize = versionStatusCanvas.width/20;
versionStatusCtx.font= textSize+"px Verdana";
// Get needed variables
var value = versionStatusChart.segments[i].value + '%';
var startAngle = versionStatusChart.segments[i].startAngle;
var endAngle = versionStatusChart.segments[i].endAngle;
var middleAngle = startAngle + ((endAngle - startAngle)/2);
// Compute text location
var posX = (radius/2) * Math.cos(middleAngle) + midX;
var posY = (radius/2) * Math.sin(middleAngle) + midY;
// Text offside by middle
var w_offset = versionStatusCtx.measureText(value).width/2;
var h_offset = textSize/4;
if(value != '0.0%')
versionStatusCtx.fillText(value, posX - w_offset, posY + h_offset);
}
}
}
功能绘图图表(版本StatusCANVAS、保留、激活、取消、,
activecount、onholdcount、cancelledcount){
变量版本StatusData=[{
价值:暂缓,
颜色:“4444”,
标签:“暂停(“+onholdcount+”),
},
{
值:活动,
颜色:“72bb53”,
标签:“活动(“+activecount+”),
},
{
价值:取消,
颜色:“ff6624”,
标签:“已取消”(“+cancelledcount+”),
}];
var versionStatusCanvas=document.getElementById(“versionStatus”);
var versionStatusCtx=versionStatusCanvas.getContext(“2d”);
var versionStatusChart=新图表(versionStatusCx).Pie(versionStatusData{
动画步骤:100,
动画设置:“easeInOutQuart”,
showTooltips:false,
错误:错误,
onAnimationProgress:DrawSegmentValue
});
document.getElementById('version-status-legend')。innerHTML=
versionStatusChart.generateLegend();
函数值(){
var半径=版本StatusChart.outerRadius;
var midX=versionStatusCanvas.width/2;
var midY=versionStatusCanvas.height/2
对于(var i=0;i尝试以下方法:
if(parseInt(value) > 0)
versionStatusCtx.fillText(value, posX - w_offset, posY + h_offset);
}
parseInt(value)
将该值解析为一个int以与零进行比较。之前在代码中,该值将%符号与该值合并,使其成为字符串