首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

JFreeChart生成各式各样的图表之饼图

2012-07-25 
JFreeChart生成各种各样的图表之饼图????????? 我们简单介绍JFreeChart项目后,下面开始动手编写各种各样的

JFreeChart生成各种各样的图表之饼图

????????? 我们简单介绍JFreeChart项目后,下面开始动手编写各种各样的图表

??? 建立个web工程,解压.zip文件,到lib文件夹下,把jfreechart与jcomman的jar文件加到工程里面

??? 饼图

??? 建一个servlet,然后在service方法里面写以下内容

?

public class PieChartDemo extends HttpServlet {    public void service(ServletRequest request, ServletResponse response)     throws ServletException, IOException {         response.setContentType("image/jpeg");         //创建一个数据集对象        DefaultPieDataset dpd = new DefaultPieDataset();        //设置数据的对象的说明与数据        dpd.setValue("C/C++",  20);        dpd.setValue("Java", 50);         dpd.setValue("Php", 15);        dpd.setValue("JavaScript", 15);        dpd.setValue("Python", 10);        //创建一个饼形图表对象        JFreeChart jFreeChart = ChartFactory.createPieChart("08年使用语言的排行榜", dpd, true, true, false);        jFreeChart.getTitle().setFont(new Font("宋体", 0, 12));        // 设置图表区域对象        PiePlot piePort = (PiePlot)jFreeChart.getPlot();        //设置图表区域的标签字体        piePort.setLabelFont(new Font("宋体", 0, 12));        //设置图表区域无数据时显示的文字        piePort.setNoDataMessage("没有可排行数据");        // 设置图表区域不是圆形,由于是3D的饼形图,所以设置为false        piePort.setCircular(false);        //设置图表区域的文字与图表区域的间隔        piePort.setLabelGap(0.02D);        //将图表以数据流的方式返回客户端        ChartUtilities.writeChartAsPNG(response.getOutputStream(), jFreeChart, 500, 270);    }}

?

??? 图表效果如下:

???
JFreeChart生成各式各样的图表之饼图

热点排行