离线3D交互式饼图

问题描述:

我想构建一个3D交互式饼图。首先我使用谷歌图表,但不幸的是这不能脱机工作。我使用jpgraph,jscharts和rgraph的图表,但没有我想要的效果。我想要一个图表,它必须是免费的,离线工作,并且与谷歌图形具有大致相同的外观。有什么建议? 在此先感谢!离线3D交互式饼图

重要我想使用我的分贝结果。我写这篇文章的代码,但不工作:

data: [{ 
      name: 'Present', 
      y: <?php 
       while($row2 = mysql_fetch_assoc($res2)){ 

       echo $row2["COUNT(*)"]; 



       } 
     }, { 
      name: 'absentees', 
      y: <?php 
       while($row1 = mysql_fetch_assoc($res1)){ 

       echo $row1["COUNT(*)"]; 



       } 

我有这些查询:

SELECT COUNT(*) 
FROM staff s, work w, absence a 
WHERE s.id=a.id_staff 
AND s.id_work=w.id 
AND w.name='sales manager' 
AND a.name='disease' 

SELECT COUNT(*) 
    FROM staff s, work w, absence a 
    WHERE s.id=a.id_staff 
    AND s.id_work=w.id 
    AND w.name='sales manager' 
    AND a.name='vacation' 

我尝试这一点,但不工作

series: [{ 
     type: 'pie', 
     name: 'Absent', 
     data: [ 
      ['Absent Illness', <?php 





        while($row1 = mysql_fetch_assoc($res1)){ 
        while($row2 = mysql_fetch_assoc($res2)){ 
        $row['COUNT(*)']=$row2['COUNT(*)'] - $row1['COUNT(*)']; 
        echo $row["COUNT(*)"]; 


        } 
        } 
        ?>], 
      ['Absent Vacation', 
      <?php 

        while($row1 = mysql_fetch_assoc($res1)){ 


        echo $row1["COUNT(*)"]; 


        } 
        ?>] 



     ] 
    }] 
});           
+0

您以何种形式收到您的数据?以下是使用外部数据源的饼图的简单示例:http://jsfiddle.net/ox50bLbn/。 –

Highcharts方便地添加互动性,移动优化图表到您的网络和移动项目。它是免费的,离线服务您的要求。 “https://www.highcharts.com/demo

+0

请参阅此[链接](https://stackoverflow.com/a/46218712/8081811)。谢谢。 – Jason

请使用highchart,因为它提供了各种类型的图表,您也可以在离线模式下使用它。 https://www.highcharts.com/

让我引导将mysql结果显示在饼图上。 function functionname() { $.ajax({ url : 'POST API LINK', type : 'GET', dataType : 'json', success : function(data) { var chart = new CanvasJS.Chart("chartContainer", { title : { text : "A suitable title" }, animationEnabled : true, zoomEnabled : false, data : [ { type : "pie", dataPoints : [ { y : data.active, indexLabel : "Active part=" + data.active }, { y : data.Inactive, indexLabel : "Inactive part=" + data.Inactive }, ] } ] }); chart.render(); }, error : function() { alert('sorry!Somthing went wrong in Pie chart'); } }); }

这就是你如何显示MySQL结果。
在数据中,我从我的数据库中获得活动和非活动的值。

对于用户界面,请检查这个fiddle link
请让我知道你是否有任何疑问。