2017-07-15 76 views
-1

我想创建一个显示百分比的分层饼图吗?如何在Java中使用d3创建分层饼图?如何在html和servlet或jsp中创建分层饼图?

它应该是这样的:http://yhnavein.github.io/d3-hierarchical-pie/

请给我提供的代码中使用JSP,AJAX,JSON和servlet来创建。

+0

如果您希望人们提供帮助,则需要提供更多信息。你试过什么了?你的图表数据来自哪里? – Valentin

+0

所以看起来你的问题:*“请做我的工作,而不是我,我不会工作。”*从某处开始,只为你找到的具体问题寻求帮助。顺便说一句,这是一个完全客户端的东西,它不关心Java或PHP或任何其他在您的服务器端。基于这些原因,我投票结束你的问题。 – peterh

+1

回复@Valentin。 – Tarik

回答

0
if ($('#Start_date').val().length==0) { 
     alert("Please Select Start Date"); 
    }else if($('#end_date').val().length==0){ 
      alert("Please Select End Date"); 
    } 
    else{ 

$('#chart-container-OTAType').text(); 
var graphData; 
var data = { 
    action: "getOTATypeByDate", 
    fromDate: fromDate, 
    toDate: toDate 
}; 
var dataString = 'MainJson=' + JSON.stringify(data); 
$.ajax({ 
    type: 'POST', 
    url: './OTAServlet', 
    data: dataString, 
    dataType: 'text', 
    async: false, 
    success: function (result) { 
     var responseData = $.trim(result); 
     graphData = JSON.parse(responseData); 
     if (FusionCharts('OTAType-Pie-chart')) { 
      FusionCharts('OTAType-Pie-chart').dispose(); 
     } 
     $("#divOTATypeGraph").text(''); 

      var chart = new FusionCharts({  
      type: 'pie2d', 
      renderAt: 'divOTATypeGraph', 
      id: 'OTAType-Pie-chart', 
      width: '650', 
      height: '500', 
      dataFormat: 'json', 
      dataSource: { 
       "chart": { 
        "caption": "Report for OTA", 
        "showvalues": "1", 
        "showpercentvalues": "1", 
        "showpercentintooltip": "0", 
        "bgcolor": "#FFFFFF", 
        "basefontcolor": "#400D1B", 
        "showshadow": "0", 
        "animation": "0", 
        "showborder": "0", 
        "paletteColors": '#9B609B,#AACB47,#1A9494,#BE6F71, #AACB47', 
       }, 
       "data": graphData 
      }, 
      "events": { 
       "dataPlotClick": function (eventObj, dataObj) { 
        var text = dataObj.categoryLabel; 
        if(text == 'OTA') { 
         otaStatus = 1; 
        } 


        if (otaStatus > 0) { 
         getBrandStatusByDate(otaStatus); 
        } 
       } 
      } 


     }); 
     chart.render(); 
    }