- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JFreeChart組件在基于JSP的Web统计图表中的应用与实现
JFreeChart组件在基于JSP的Web统计图表中的应用与实现
摘 要:本文以实际项目中问题的需求,在分析了JFreeChart组件结构的基础上,以柱状图为例,详细介绍了其在JSP中开发基于Web的统计图表的方法。
关键词:JFreeChart Web图表 JSP
1 概述
创建一个可以在Web浏览器上查看的图表一般有两种做法:第一种是使用Applet利用Java本身对图形的支持来显示一个图表;第二种是直接在Web服务器端生成好图表图片文件后发送给浏览器。第一种方式显然对于客户端要求太高,这种方式比较适合局域网的应用,而对于因特网的环境就显得不太适合了。本文介绍的是一个基于Java的图表引擎JFreeChart,他可用在服务器端产生图表。
JFreeChart是开放源代码站点SourceF上的一个Java项目,它主要用来开发生成各种各样的图表,这些图表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。本文主要以柱状图为例介绍其使用方法,基于此可以去开发其他样式的图表。
2 环境和资源
在之前必须先准备好开发环境,因为是基于Web浏览器的图表展现,因此需要一个Servlet引擎或者是J2EE应用服务器。本文的JSP环境是Tomcat 5.0+jdk1.5.0,具体配置不在此详述。
JFreeChart可以到/jfreechart/站点下载,当前最新版本是1.0.0,本文以0.9.11版本进行调试,其核心对象类如表1所示。
表1 JFreeChart中核心的对象类
类名 类的作用以及简单描述 JFreeChart 图表对象,任何类型的图表的最终表现形式都是在该对象进行一些属性的定制。JFreeChart引擎本身提供了一个工厂类用于创建不同类型的图表对象 XXXXXDataset 数据集对象,用于提供显示图表所用的数据。根据不同类型的图表对应着很多类型的数据集对象类 XXXXXPlot 图表区域对象,基本上这个对象决定着什么样式的图表,创建该对象的时候需要Axis、Renderer以及数据集对象的支持 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文件中配置以下内容:
Servlet
Servlet-nameDisplay Chart/servlet-name
Servlet-classorg.jfree.chart.servlet.DisplayChart/servlet-class
/servlet
安装配置完成,就可以编写程序来生成所需统计图。
3 使用JFreeChart生成柱状图表
首先看一个最简单的例子,图片中的各类属性都采用默认值。
%@ Page content Type=text/html; charset=GBK%
%@ Page import=org.jfree.chart.ChartFactory,
org.jfree.chart.JFreeChart,
org.jfree.chart.plot.PlotOrientation,
org.jfree.chart.servlet.ServletUtilities,
org.jfree.data.DefaultCategoryDataset%
%
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(32, 大观圆, 已售);
dataset.addValue(18, 大观圆, 待售);
dataset.addValue(18, 大观圆, 预订);
dataset.addValue(28, 大观圆, 认购);
dataset.addValue(8, 大观圆, 预留);
JFreeChart chart = ChartFactory.createBarChart3D(房屋销量统计图,房屋状态,
销量,dataset, Plot
文档评论(0)