资源描述:
《《jfreechart组件在基于jsp的web统计图表中的应用与实现》》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、JFreeChart组件在基于JSP的Web统计图表中的应用与实现摘要:本文以实际项目中问题的需求,在分析了JFreeChart组件结构的基础上,以柱状图为例,详细介绍了其在JSP中开发基于Web的统计图表的方法。关键词:JFreeChartWeb图表JSP1概述创建一个可以在Web浏览器上查看的图表一般有两种做法:第一种是使用Applet利用Java本身对图形的支持来显示一个图表;第二种是直接在Web服务器端生成好图表图片文件后发送给浏览器。第一种方式显然对于客户端要求太高,这种方式比较适合局域网的应用,而对于因特网的环境就显得不太适合了。本文介绍的是一个基于Java的图表引擎JFree
2、Chart,他可用在服务器端产生图表。JFreeChart是开放源代码站点SourceForge.net上的一个Java项目,它主要用来开发生成各种各样的图表,这些图表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。本文主要以柱状图为例介绍其使用方法,基于此可以去开发其他样式的图表。2环境和资源在之前必须先准备好开发环境,因为是基于Web浏览器的图表展现,因此需要一个Servlet引擎或者是J2EE应用服务器。本文的JSP环境是Tomcat5.0+jdk1.5.0,具体配置不在此详述。JFreeChart可以到http://www.j
3、free.org/jfreechart/站点下载,当前最新版本是1.0.0,本文以0.9.11版本进行调试,其核心对象类如表1所示。表1JFreeChart中核心的对象类类名类的作用以及简单描述JFreeChart图表对象,任何类型的图表的最终表现形式都是在该对象进行一些属性的定制。JFreeChart引擎本身提供了一个工厂类用于创建不同类型的图表对象XXXXXDataset数据集对象,用于提供显示图表所用的数据。根据不同类型的图表对应着很多类型的数据集对象类XXXXXPlot图表区域对象,基本上这个对象决定着什么样式的图表,创建该对象的时候需要Axis、Renderer以及数据集对象的支
4、持XXXXXAxis用于处理图表的两个轴:纵轴和横轴XXXXXRenderer负责如何显示一个图表对象XXXXXURLGenerator用于生成Web图表中每个项目的鼠标点击链接XXXXXToolTipGenerator用于生成图象的帮助提示,不同类型图表对应不同类型的工具提示类解压缩文件jfreechart-0.9.11,jfreechart-0.9.11.jar和lib/jcommon-0.8.6.jar,lib/gnujaxp.jar,是开发运行需要的文件,把这三个文件放置到应用的lib目录下。然后在web.xml文件中配置以下内容:Di
5、splayChartorg.jfree.chart.servlet.DisplayChart安装配置完成,就可以编写程序来生成所需统计图。3使用JFreeChart生成柱状图表首先看一个最简单的例子,图片中的各类属性都采用默认值。<%@PagecontentType="text/html;charset=GBK"%><%@Pageimport="org.jfree.chart.ChartFactory,org.jfree.chart.JFreeChart,org.jfree.ch
6、art.plot.PlotOrientation,org.jfree.chart.servlet.ServletUtilities,org.jfree.data.DefaultCategoryDataset"%><%DefaultCategoryDatasetdataset=newDefaultCategoryDataset();dataset.addValue(32,"大观圆","已售");dataset.addValue(18,"大观圆","待售");dataset.addValue(18,"大观圆","预订");dataset.addValue(28,"大观圆","认购");data
7、set.addValue(8,"大观圆","预留");JFreeChartchart=ChartFactory.createBarChart3D("房屋销量统计图","房屋状态","销量",dataset,PlotOrientation.VERTICAL,False,false,false);Stringfilename=ServletUtilities.saveChartAsPNG(chart,300,260,null