分享

JFreeChart修改饼状图的方法

 WindySky 2009-01-14
最近改了一下原来做的一个web项目,项目中用到了JFreeChart,要求修改用JFreeChart绘制饼图的颜色,希望能够做到一个key对应一个固定的颜色。
比如,有一个问题,选择ABCD四个答案的比例分别是:10%,30%,20%,40%。希望饼图中A的颜色是red,B的颜色是green,C的颜色是yellow,D的颜色是blue。
可以这么做:
1.准备好dataset,这一步就不讲了,pieChart有其要求的dataset格式。
2.书写一个创建pieChart的方法:
Java代码 复制代码
  1. public static JFreeChart createPieChart(DefaultPieDataset dataset, String mytitle) {   
  2.             JFreeChart chart = ChartFactory.createPieChart(mytitle,dataset,truetruefalse);   
  3.             PiePlot plot = (PiePlot) chart.getPlot();   
  4.             plot.setSectionOutlinesVisible(false);   
  5.             plot.setNoDataMessage("没有可供使用的数据!");   
  6.             plot.setSectionPaint("A", Color.RED);   
  7.             plot.setSectionPaint("B", Color.GREEN);   
  8.             plot.setSectionPaint("C", Color.YELLOW);   
  9.             plot.setSectionPaint("D", Color.BLUE);   
  10.             //就是这个地方,实现了对各个key对应饼图区域的颜色设置   
  11.   
  12. //          PiePlot plot = (PiePlot) chart.getPlot();   
  13.             plot.setLabelFont(new Font("SansSerif", Font.PLAIN, 12));   
  14.             plot.setCircular(false);   
  15.             plot.setLabelGap(0.02);   
  16. //do more things here   
  17.             return chart;   
  18. }  

注意到plot.setSectionPaint("A", Color.RED);这个方法了吧,该方法就是设置颜色的关键语句。如果没有此方法,则JFreeChart在其创建过程中,会调用默认的颜色来给各个区域进行颜色设置。
不知道说清楚了没有……

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多