Highcharts动态更新饼图mysql

时间:2015-04-08 07:36:34

标签: mysql dynamic charts highcharts

我有一个馅饼,我想每隔3秒从mysql data.php添加动态更新。我需要在.ready(function()中添加事件? 任何帮助将不胜感激。

            $(document).ready(function() {
        var options = {
            chart: {
                renderTo: 'container',
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false,
                backgroundColor:'rgba(255, 255, 255, 0.0)'
            },
            title: {
                text: 'Grafic'
            },
            tooltip: {
                formatter: function() {
                return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %';
                },},
            credits: {
            enabled: false
            },
            plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        color: '#000000',
                        connectorColor: '#000000',
                        formatter: function() {
                            return '<b>'+ this.point.name +'</b>: '+ this.percentage.toFixed(4) +' %';}}}},
            series: [{
                type: 'pie',
                data: []}]}
        $.getJSON("data.php", function(json) {
            options.series[0].data = json;
            chart = new Highcharts.Chart(options);
        });
    });

1 个答案:

答案 0 :(得分:1)

http://www.w3schools.com/js/js_timing.asp

您可能希望使用&#34; setinterval&#34;。

您可能还需要设置递归回调,以便每次都更新高级图表。

如果您有任何问题,请与我们联系。

更新2016年9月29日

这是另一种方法,在jQuery中使用递归settimeout,以防它有用。

(function($){

    $(function(){  //document.ready

    });

    (function recurseEvent(element){

            element.doStuff();

            setTimeout(function(){
                recurseEvent(element);
            }, 2000);

    })($('#myElement'));

})(jQuery);`