利用JFreeChart生成图形报表
JFreeChart是一个Java开源项目,是一款优秀的Java图表生成插件,它提供了在Java Application、Servlet和JSP下生成各种图片格式的图表,包括柱形图、饼形图、线图、区域图、时序图和多轴图等。本章将详细介绍利用JFreeChart生成各种图表的技术要点。
14.1 JFreeChart基础
本节将介绍JFreeChart插件的下载与使用方法,以及JFreeChart插件的核心类及其 功能。
14.1.1 JFreeChart的下载与使用
在JFreeChart的官方网站(http://www.jfree.org/jfreechart/index.html)上可以下载到该插件,该插件有两个版本。
ll freechart-1.0.5.zip,该版本适用于Windows系统。
ll jfreechart-1.0.5.tar.gz,该版本适用于UNIX/Linux系统。
本书所有示例的开发环境均为Windows系统,解压缩jfreechart-1.0.5.zip后将得到一个名为jfreechart-1.0.5的文件夹,只需将lib子文件夹内的如下文件复制到Web应用程序目录中的/WEB-INF/lib目录下。
ll jfreechart-1.0.5.jar。
ll jcommon-1.0.9.jar。
ll junit.jar。
ll gnujaxp.jar。
ll servlet.jar。
并且在web.xml文件中添加如下代码:
<servlet>
<servlet-name>DisplayChart</servlet-name>
<servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DisplayChart</servlet-name>
<url-pattern>/servlet/DisplayChart</url-pattern>
</servlet-mapping>
这样,就可以利用JFreeChart插件生成动态统计图表了。利用JFreeChart插件生成动态统计图表的基本步骤如下。
(1)创建绘图数据集合。
(2)创建JFreeChart实例。
(3)自定义图表绘制属性,该步可选。
(4)生成指定格式的图片,并返回图片名称。
(5)组织图片浏览路径。
(6)通过HTML中的<img>元素显示图片。
14.1.2 JFreeChart核心类简介
在使用JFreeChart插件之前,先介绍该插件的核心类及其功能,这对将来能够得心应手地使用该插件是非常重要的,JFreeChart核心类及其功能如表14.1所示。
表14.1JFreeChart核心类及其功能
类 名
功 能
JFreeChart
图表对象,生成任何类型的图表都要通过该对象,JFreeChart插件提供了一个工厂类ChartFactory,用来创建各种类型的图表对象
XXXDataset
数据集对象,用来保存绘制图表的数据,不同类型的图表对应着不同类型的数据集对象
XXXPlot
绘图区对象,如果需要自行定义绘图区的相关绘制属性,需要通过该对象进行设置
XXXAxis
坐标轴对象,用来定义坐标轴的绘制属性
XXXRenderer
图片渲染对象,用于渲染和显示图表
XXXURLGenerator
链接对象,用于生成Web图表中项目的鼠标单击链接
XXXToolTipGenerator
图表提示对象,用于生成图表提示信息,不同类型的图表对应着不同类型的图表提示对象
通过表14.1,可以简单了解JFreeChart插件中各个类的功能,下面将仔细讲解利用JFreeChart生成各种图表的技术要点。