我们简单介绍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);
}
}
图表效果如下: