一、简介
		JFreeChart(
http://www.jfree.org/) 是一个开源的 JAVA 项目,它主要用来开发各种各样的图表,这些图表包括:饼图、柱状图 ( 普通柱状图以及堆栈柱状图 ) 、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。在这些不同式样的图表上可以满足目前商业系统的要求。 JFreeChart 是一种基于 JAVA 语言的图表开发技术。 JFreeChart 可用于 Servlet 、 JSP 、 Applet 、 Java Appication 环境中,通过 JDBC 可动态显示任何数据库数据,结合 Itext 可以输出至 PDF 文件。
二、JFreeChart获取JFreeChart 是JFreeChart公司在开源网站SourceForge.net上的一个项目,该公司的主要产品有如下: 
1.JFreeReport :报表解决工具 
2.JFreeChart:Java 图形解决方案(Application/Applet/Servlet/Jsp) 
3.JCommon :JFreeReport和JFreeChart的公共类库 
4.JFreeDesigner :JFreeReport的报表设计工具 
我们可以从jfree官方网站上获取最新版本和相关资料, 
获取地址:
http://www.jfree.org/当前最新版本:jfreechart-1.0.3.zip。
三
、JFreeChart配置安装1 、解压jfreechart-1.0.3.zip.到指定位置,其中source是jfreechart的源码,jfreechart-1.0.3-demo.jar 是例子程序,可以先运行一下看看各种效果。 
2 、为了配置成功,我们需要关注的文件有如下三个: 
设置classpath。加入下面三个jar包。 
jfreechart-1.0.3.jar 、jcommon-1.0.8.jar、gnujaxp.jar  
至此jfreechart的配置就完成了 。
四、JFreeChart功能介绍 JFreeChart 目前是最好的java图形解决方案,基本能够解决目前的图形方面的需求,主要包括如下几个方面: 
pie charts (2D and 3D) :饼图(平面和立体) 
bar charts (regular and stacked, with an optional 3D effect) :柱状图 
line and area charts :曲线图 
scatter plots and bubble charts 
time series, high/low/open/close charts and candle stick charts :时序图 
combination charts :复合图 
Pareto charts 
Gantt charts :甘特图 
wind plots, meter charts and symbol charts 
wafer map charts 
( 态图表,饼图(二维和三维) , 柱状图 ( 水平,垂直),线图,点图,时间变化图,甘特图, 股票行情图,混和图, 温度计图, 刻度图等常用商用图表) 
图形可以导出成PNG和JPEG格式,同时还可以与PDF和EXCEL关联 
JFreeChart 核心类库介绍: 
研究jfreechart源码发现源码的主要由两个大的包组成:org.jfree.chart,org.jfree.data。其中前者主要与图形 
本身有关,后者与图形显示的数据有关。具体研究如果大家有兴趣的话可以自己研究 。 
核心类主要有: 
org.jfree.chart.JFreeChart :图表对象,任何类型的图表的最终表现形式都是在该对象进行一些属性的定制。JFreeChart引擎本身提供了一个工厂类用于创建不同类型的图表对象 
org.jfree.data.category.XXXDataSet: 数据集对象,用于提供显示图表所用的数据。根据不同类型的图表对应着很多类型的数据集对象类 
org.jfree.chart.plot.XXXPlot :图表区域对象,基本上这个对象决定着什么样式的图表,创建该对象的时候需要Axis、Renderer以及数据集对象的支持 
org.jfree.chart.axis.XXXAxis :用于处理图表的两个轴:纵轴和横轴 
org.jfree.chart.render.XXXRender :负责如何显示一个图表对象 
org.jfree.chart.urls.XXXURLGenerator: 用于生成Web图表中每个项目的鼠标点击链接 
XXXXXToolTipGenerator: 用于生成图象的帮助提示,不同类型图表对应不同类型的工具提示类 。
参考地址:
http://ltc603.javaeye.com/blog/30207http://blog.sina.com.cn/u/405da78d010000aphttp://www.blogjava.net/Alpha/archive/2007/01/13/93569.html