如何将此百分比转换为带小数位的整数

时间:2015-09-15 11:21:44

标签: javascript php percentage

大家好我拥有完美运行的脚本代码并显示饼图百分比。百分比显示15位小数,我希望这可以使它成为一个整数。这是我的代码。谢谢你的帮助。

<script type="text/javascript">
    $(document).ready(function() {
        var options = {
            chart: {
                renderTo: 'container',
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false
            },
            title: {
                text: 'Total Number of Patients Per Month'
            },
            tooltip: {
                formatter: function() {
                    return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %';
                }
            },
            plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        color: '#000000',
                        connectorColor: '#000000',
                        formatter: function() {
                            return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %';
                        }
                    }
                }
            },
            series: [{
                type: 'pie',
                name: 'Browser share',
                data: []
            }]
        }

        $.getJSON("data.php", function(json) {
            options.series[0].data = json;
            chart = new Highcharts.Chart(options);
        });



    });   
    </script>

图表显示15位小数,如15.123456789123456%。

6 个答案:

答案 0 :(得分:0)

Math.round(15.123456789123456)
15

Math.floor(15.123456789123456)
15

Math.ceil(15.123456789123456)
16

用this.percentage替换15.123456789123456

答案 1 :(得分:0)

使用

Math.floor() 

javascript函数。您应该在添加百分比文本时更新代码,因此:

<script type="text/javascript">
    $(document).ready(function() {
        var options = {
            chart: {
                renderTo: 'container',
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false
            },
            title: {
                text: 'Total Number of Patients Per Month'
            },
            tooltip: {
                formatter: function() {
                    return '<b>'+ this.point.name +'</b>: '+ Math.floor(this.percentage) +' %';
                }
            },
            plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        color: '#000000',
                        connectorColor: '#000000',
                        formatter: function() {
                            return '<b>'+ this.point.name +'</b>: '+ Math.floor(this.percentage) +' %';
                        }
                    }
                }
            },
            series: [{
                type: 'pie',
                name: 'Browser share',
                data: []
            }]
        }

        $.getJSON("data.php", function(json) {
            options.series[0].data = json;
            chart = new Highcharts.Chart(options);
        });



    });   
    </script>

答案 2 :(得分:0)

<?php
if(isset($_GET["page"])){
    switch($_GET["page"]){
        case "register" :
            echo "Registration Page Placeholder";
            break;
    }
}
?>

这将仅提供整数部分,虽然与您的需求无关,但也适用于负数。

答案 3 :(得分:0)

由于我们在JavaScript函数中,Number.prototype.toFixed()

怎么样
return '<b>'+ this.point.name +'</b>: '+ this.percentage.toFixed(0) +' %';

请继续阅读:MDN Link

请参阅此处的示例:Codepen

答案 4 :(得分:0)

如何使用Math.floor(值)

Html

 <p>
    <input type="text" id="source" value="15.123456789123456789">
    <input type="text" id="target" value="">
</p>
<input type="submit" id="floorIt" value="To Integer">

JS

$(document).ready(function () {
    $("#floorIt").click(function (e) {
        var sourceValue = $("#source").val();
        var targetValue = Math.floor(sourceValue);

        $("#target").val(targetValue);
    });

});

看看这个Fiddle

答案 5 :(得分:0)

要将数字四舍五入为例如2位小数,您可以使用以下内容:

this.percentage = Math.round(this.percentage * 100) / 100;