六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 78|回复: 0

JFreeChart修改饼状图的方法

[复制链接]

升级  9.33%

14

主题

14

主题

14

主题

秀才

Rank: 2

积分
64
 楼主| 发表于 2013-1-27 04:57:59 | 显示全部楼层 |阅读模式
最近改了一下原来做的一个web项目,项目中用到了JFreeChart,要求修改用JFreeChart绘制饼图的颜色,希望能够做到一个key对应一个固定的颜色。
比如,有一个问题,选择ABCD四个答案的比例分别是:10%,30%,20%,40%。希望饼图中A的颜色是red,B的颜色是green,C的颜色是yellow,D的颜色是blue。
可以这么做:
1.准备好dataset,这一步就不讲了,pieChart有其要求的dataset格式。
2.书写一个创建pieChart的方法:
public static JFreeChart createPieChart(DefaultPieDataset dataset, String mytitle) {JFreeChart chart = ChartFactory.createPieChart(mytitle,dataset,true, true, false);PiePlot plot = (PiePlot) chart.getPlot();plot.setSectionOutlinesVisible(false);plot.setNoDataMessage("没有可供使用的数据!");plot.setSectionPaint("A", Color.RED);plot.setSectionPaint("B", Color.GREEN);plot.setSectionPaint("C", Color.YELLOW);plot.setSectionPaint("D", Color.BLUE);//就是这个地方,实现了对各个key对应饼图区域的颜色设置//        PiePlot plot = (PiePlot) chart.getPlot();        plot.setLabelFont(new Font("SansSerif", Font.PLAIN, 12));        plot.setCircular(false);        plot.setLabelGap(0.02);//do more things here        return chart;}
注意到plot.setSectionPaint("A", Color.RED);这个方法了吧,该方法就是设置颜色的关键语句。如果没有此方法,则JFreeChart在其创建过程中,会调用默认的颜色来给各个区域进行颜色设置。
不知道说清楚了没有……
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表