Javascript php中的饼图,使用chart.js提供mysql数据

Javascript php中的饼图,使用chart.js提供mysql数据,javascript,php,mysql,charts,chart.js,Javascript,Php,Mysql,Charts,Chart.js,我希望在我的项目中使用charts.js添加饼图。 我搜索并找到了一些简单图表的代码。 我的部分图表代码如下: printf( '<script type="text/javascript" src="extlib/Chart.js"></script>' ); printf( '<script type="text/javascript" src="extlib/jquery-min.js"></script>' ); printf( '<

我希望在我的项目中使用charts.js添加饼图。 我搜索并找到了一些简单图表的代码。 我的部分图表代码如下:

printf( '<script type="text/javascript" src="extlib/Chart.js"></script>' );
printf( '<script type="text/javascript" src="extlib/jquery-min.js"></script>' );
printf( '<p style="text-align: center;">' );
printf( '<canvas id="mycanvas" width="256" height="256"></canvas>' );
printf( '<script type="text/javascript">' );
 ?>
    var ctx = $("#mycanvas").get(0).getContext("2d");
    var piedata = [
    {
    value:30,
    color:"green",
    label:"sta1",
    labelColor : 'white'
    },
    {
    value:60,
    color:"red",
    label:"sta1",
    labelColor : 'white'
    },
    {
    value:50,
    color:"blue"
    }
    ]

    new Chart(ctx).Pie(piedata);
    <?php
    printf( '</script>' );  
我能为动态图表做些什么。那就是值应该来自MySQL数据库。 来自DB的数据值的数量每次都会不同。每个数据值都有特定的颜色

在上面的代码中,标签在鼠标上方不可见


请给我指路。

迭代来自json响应的数据,并将数据推送到数组中

var piedata = [];
$.each(yourJson,function(i,val){
piedata.push({value:val.value,color:val.color,label:val.label,labelColor:val.labelColor  });
});

然后设置新的Chartctx.Piepiedata

与HighChart无关感谢您的回复。您能告诉我如何显示此图表的图例吗?如果您能为您的问题创建一个小标题,那将非常好。在文档中,饼图的图例与legendTemplate相同:我已经尝试了您的代码。但由于数据库没有,我如何为值设置颜色。我们必须手动为每个值设置颜色。有什么方法吗?如果要设置随机颜色,请在填充数组r=Math.floorMath.random*200时使用以下代码;g=数学floorMath.random*200;b=数学·地板随机*200;颜色='rgb'+r+'、'+g+'、'+b+;在你的阵列中加入这种颜色在这里看一个例子