javascript - Highchart 饼图基础

标签 javascript php highcharts

大家好。所以我的 highcharts 馅饼遇到了某种问题,我只有两个项目/图例,即 1995 年和 1996 年。我有一个 1995 年的数据,其中有 2 个,1996 年是 0。

它显示了饼图,但问题是百分比错误。正如您在下图中看到的,它显示了 1995 年和 1996 年。

1995 年应该是 100% 而不是 10%,因为我只有两项,1996 年是正确的,但是因为我没有数据。 enter image description here

这是我的 php 代码

<?php 
    require '/db/database_configuration.php';

    $_1995 = mysqli_query($conn, "SELECT COUNT(*) AS Total FROM `tblalumni` WHERE yeargrad LIKE '1995' and alum_status LIKE 2");
    $_1996 = mysqli_query($conn, "SELECT COUNT(*) AS Total FROM `tblalumni` WHERE yeargrad LIKE '1996' and alum_status LIKE 2");

    $_1995 = mysqli_fetch_array($_1995);
    $_1996 = mysqli_fetch_array($_1996);

    // displays zero if none
    if (empty($_1995['Total'])) { $_1995 = '0'; } else { $_1995 = $_1995['Total'];}
    if (empty($_1996['Total'])) { $_1996 = '0'; } else { $_1996 = $_1996['Total'];}


    $ans_1995 = '1995';
    $ans_1996 = '1996';


    $Data95 = $_1995;
    $Data96 = $_1996;


?>

这是我的 JavaScript

<script type="text/javascript">
$(function () {
    $('#container').highcharts({
        chart: {
        plotBackgroundColor: null,
        plotBorderWidth: null,
        plotShadow: false,
        type: 'pie'
    },
    title: {
        text: 'Browser market shares January, 2015 to May, 2015'
    },
    tooltip: {
        pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
    },
    plotOptions: {
        pie: {
            allowPointSelect: true,
            cursor: 'pointer',
            dataLabels: {
                enabled: true,
                format: '<b>{point.name}</b>: {point.percentage:.1f} %',
                style: {
                    color: (Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black'
                }
            }
        }
    },
    series: [{
        name: 'Brands',
        colorByPoint: true,
        data: [{
            name: <?php echo json_encode($ans_1995); ?>,
            y: [<?php echo $Data95; ?>]
        }, {
            name: <?php echo json_encode($ans_1996); ?>,
            y: [<?php echo $Data96; ?>]
        }]
    }]
});
});
</script>

有人可以帮助我吗?

最佳答案

改变

series: [{
    name: 'Brands',
    colorByPoint: true,
    data: [{
        name: <?php echo json_encode($ans_1995); ?>,
        y: [<?php echo $Data95; ?>]
    }, {
        name: <?php echo json_encode($ans_1996); ?>,
        y: [<?php echo $Data96; ?>]
    }]
}]

series: [{
    name: 'Brands',
    colorByPoint: true,
    data: [{
        name: <?php echo json_encode($ans_1995); ?>,
        y: <?php echo $Data95; ?>
    }, {
        name: <?php echo json_encode($ans_1996); ?>,
        y: <?php echo $Data96; ?>
    }]
}]

去掉括号就好了..哈哈哈

关于javascript - Highchart 饼图基础,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41638321/

相关文章:

具有不同原型(prototype)的 Javascript 对象构造函数混淆

php - SQL UPDATE 语句不影响任何行 (PHP)

javascript - 两个不同图表的两个工具提示

javascript - Object.defineProperty get/set 闭包

javascript - 从函数内部更改全局变量,或实现相同目标的最佳实践

php - 在 mySQL 表中搜索用户并将 true 或 false 返回到 $result?

javascript - Highchart 中的分段标签

javascript - 带渐变的事件量表 Highcharts

javascript - 移动加速度计和陀螺仪检查功能

PHP 字符串比较 : odd result, 可能的类型杂耍,不知道为什么