2013-06-27 3 views
0

3 개의 부서가 있고 각 부서의 직원 수가 8 인 jFreeChart를 사용하여 파이 차트를 만들고 싶습니다. 먼저 파이를 3으로 분할합니다. 각 부서별로 120 '인 부서의 동일한 부분. 그런 다음이 파티션에서 각 직원의 매출을 보여주고 싶습니다. jFreeChart에서 어떻게 할 수 있습니까?분할 파이 차트를 동등한 부분으로 jfreechart

답변

2
public class PieChart extends JFrame { 

    private PieDataset createDataset() { 
      DefaultPieDataset result = new DefaultPieDataset(); 
      result.setValue("department1", 33.33); 
      result.setValue("department2", 33.33); 
      result.setValue("department3", 33.33); 
      return result; 

     } 

    private JFreeChart createChart(PieDataset dataset, String title) { 

      JFreeChart chart = ChartFactory.createPieChart3D(title,   // chart title 
       dataset,    // data 
       true,     // include legend 
       true, 
       false); 

      PiePlot3D plot = (PiePlot3D) chart.getPlot(); 
      plot.setStartAngle(290); 
      plot.setDirection(Rotation.CLOCKWISE); 
      plot.setForegroundAlpha(0.5f); 
      return chart; 

     } 

} 

public static void main(String[] args) { 
      PieChart demo = new PieChart("Comparison", "Which operating system are you using?"); 
      demo.pack(); 
      demo.setVisible(true); 
     } 
+0

간단하게 파티션을 만들 수는 있지만 파티션을 더 만드는 방법은 무엇입니까? 감사. – wali

+0

paratition은 분할하기에 유용한 원형 차트를 의미하므로 어떤 학생을 할당 할 때 100 %는 부서 파티션 당 33.33을 할당하고 33.33보다 작은 값을 할당하고 각 8 명의 학생을 33.33/8 –

2

PieChartDemo1은 좋은 출발점입니다. createDataset()에 집중; 전체 source은 배포판에 포함되어 있습니다.

부록 : 파티션을 추가로 만드는 방법은 무엇입니까?

아, 각 120 ° 파티션을 다시 나누고 싶습니다. DefaultPieDataset은 계층 구조를 직접 지원하지 않지만 PiePlot의 색을 사용하여 그룹을 강조 표시 할 수 있습니다. 표시된 색을 here과 같이 Color.getHSBColor()을 사용하여 만들고 setSectionPaint()을 사용하여 적절하게 색을 적용하십시오.

+0

간단하게 파티션을 만들지 만 그 안에 파티션을 추가하는 방법은 무엇입니까? 감사. – wali

+0

위의 방법 중 하나를 제안했습니다. – trashgod

+0

답장을 보내 주셔서 감사합니다. 감사합니다. – wali

관련 문제