收藏 分享(赏)

jsp教程用JFreeChart增强JSP报表的用户体验.doc

上传人:kpmy5893 文档编号:7328772 上传时间:2019-05-15 格式:DOC 页数:10 大小:190KB
下载 相关 举报
jsp教程用JFreeChart增强JSP报表的用户体验.doc_第1页
第1页 / 共10页
jsp教程用JFreeChart增强JSP报表的用户体验.doc_第2页
第2页 / 共10页
jsp教程用JFreeChart增强JSP报表的用户体验.doc_第3页
第3页 / 共10页
jsp教程用JFreeChart增强JSP报表的用户体验.doc_第4页
第4页 / 共10页
jsp教程用JFreeChart增强JSP报表的用户体验.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、jsp教程用 JFreeChart增强 JSP报表的用户体验发布时间:2009-8-31 10:55:08 来源:厂商在线-软件直销网信息中心 点击进入论坛 jsp教程用 JFreeChart增强 JSP报表的用户体验 JFreeChart是一组功能强大、灵活易用的 Java绘图 API,使用它可以生成多种通用性的报表,包括柱状图、饼图、曲线图、甘特图等。它能够用在 Swing和Web等中制作自定义的图表或报表,并且得到广泛的应用。本文将通过引领读者学习在 JFreeChart中饼图、柱状图和曲线图的进阶应用,来达到熟练使用JFreeChart的目的。一 下载与环境配置1. 下载 JFreeC

2、hartJFreeChart是开放源代码的免费软件,但是它的支持文档需要付费才能得到。其下载地址为:http:/ 1.0.6。笔者下载的是 1.0.6最新版。说明:1)source 目录:为 jfreechart的源码目录;2)lib 目录:为包目录,我们需要关注的包为 jfreechart-1.0.6.jar、gnujaxp.jar 和 jcommon-1.0.10.jar这三个包;3)根目录下的 jfreechart-1.0.6-demo.jar是例子程序,大家双击后可看到其中有很多例子的运行结果。2. 环境配置笔者的开发环境如下:JDK:1.5MyEclipse:5.1.1 GATomc

3、at:5.5.28为了后续的“用 JFreeChart创建基于 Web的图表”的一个例子的展示,我们在MyEclipse中创建一个名为 jfreechart的 Web工程。将下载的JFreeChart1.0.6下 lib目录下的 jar包拷贝到 WebRoot/WEB-INF/lib目录下。另外还需要在 web.xml文件中增加如下配置:DisplayChartorg.jfree.chart.servlet.DisplayChartDisplayChart/DisplayChart二 柱状图在 WebRoot目录下建立 bar目录,用来存放柱状图的各个例子。首先在该目录下建立一个 sample

4、1.jsp文件,让我们来看一个简单的柱状图的例子,修改后的 sample1.jsp的内容如下所示:“ width=500 height=300 border=0 usemap=“#“ 在浏览器中输入地址:http:/localhost:8080/jfreechart/bar/sample1.jsp,可看到如下柱状图:上面的这个柱状图比较简单,稍显单调,在有些情况下,我们需要用不同颜色来表示不同的种类,或者在种类上标上具体数值,亦或需要加上 3D水晶效果。下面让我们来做更深一步的探讨。接下来让我们看一个用不同颜色来表示不通种类的例子。在 WebRoot的 bar目录下新建 sample2.jsp

5、页面,将其代码修改如下:“ width=500 height=300 border=0 usemap=“#“该页面的运行效果如下图所示:对比该例与前例,可看出 createBarChart3D的倒数第三个参数修改成了true,该参数可用来显示下方的: 。上两例我们显示的只是一个城市的肉类销量,有时候我们有对比显示多个城市的不同肉类,只要将上例稍作修改即可。例如要在图中表示广州、深圳、东莞、佛山四个城市的四个肉类的销售情况,只需要将如下三句稍做修改:double data = new double 1310, 720, 1130, 440;String rowKeys = “猪肉“, “牛肉“,

6、“鸡肉“, “鱼肉“;String columnKeys = “;例如修改成:double data = new double 1310, 1220, 1110, 1000,720, 700, 680, 640,1130, 1020, 980, 800,440, 400, 360, 300;String rowKeys = “猪肉“, “牛肉“,“鸡肉“, “鱼肉“;String columnKeys = “广州“, “深圳“, “东莞“, “佛山“;在运行该 jsp页面,可看到如下界面:在上述几例中,在某个柱子上都没有显示相应的数值,下面让我们为每个柱子都加上它的数值,我们新建一个 samp

7、le4.jsp页面,其内容如下:“ width=700 height=400 border=0 usemap=“#“运行效果如下所示:注意:jfreechart 的很多版本不兼容,请大家在运行此例时确认下载了对应的版本。三 饼图在 WebRoot目录下建立名为 pie的子目录,用来存放本教程中饼图的实例 jsp页面。下面让我们来看一个简单的三维饼图。首先在 pie目录下建立一个名为sample1.jsp的页面。在 JFreeChart中,与饼图绘制密切相关的类如下:1) PiePlot饼图绘制类,可以用来设置饼图的相关属性。例如:PiePlot pieplot = (PiePlot)jfree

8、chart.getPlot();pieplot.setLabelFont(new Font(“SansSerif“, 0, 12);pieplot.setNoDataMessage(“No data available“);pieplot.setCircular(false);pieplot.setLabelGap(0.02D);2) DefaultPieDataset默认的饼图数据集类,用来存储饼图显示的相关数据信息。例如:DefaultPieDataset dataset = new DefaultPieDataset();dataset.setValue(“品德“, new Double

9、(0.2D);dataset.setValue(“体育“, new Double(0.2D);dataset.setValue(“音乐“, new Double(0.2D);dataset.setValue(“其余成绩“, new Double(0.4D);3) ChartFactory可利用该制图工厂类 createPieChart来创建一个饼图的 JFreeChart对象,例如:JFreeChart jfreechart = ChartFactory.createPieChart(“饼图示例“, dataset, true, true, false);下面让我们看一个简单的例子,修改 sa

10、mple1.jsp的内容如下:“ width=500 height=300 border=0 usemap=“#“可以看出,饼图的绘制与柱状图的绘制类似,该例的运行效果如下:有时候我们还想知道某块所占的具体分值,或者需要突出显示某一块。这时候需要对上例进行部分修改:dataset.setValue(“其他“, 0.2);后的那段改成:/通过工厂类生成 JFreeChart对象JFreeChart chart = ChartFactory.createPieChart3D(“IT行业职业分布图“, dataset, true, false, false);PiePlot pieplot = (P

11、iePlot) chart.getPlot();pieplot.setLabelFont(new Font(“宋体“, 0, 12);/没有数据的时候显示的内容pieplot.setNoDataMessage(“无数据显示“);pieplot.setCircular(false);setExplodePercent方法很重要,它将 Label为某名称的某块挖出来突出显示,而后两句实现的效果是在“初中高级程序员”等名称后加上百分比,改成“初中高级程序员=55%”等。加上如上的代码后,同时还需要将相关的两个 java包:org.jfree.chart.labels.StandardPieSectionLabelGenerator和java.text.NumberFormat引入到该 jsp页面中。此时的运行结果如下:通过 JFreeChart还可以提供漂亮的水晶饼图效果,接着让我们新建一个sample3.jsp页面来体验一下超炫美图吧。修改 sample3.jsp页面如下:“width=500 height=300 border=0 usemap=“#“利用 setForegroundAlpha()方法可以设置 3D饼图的透明度,利用setStartAngle()可以设置其开始角度,利用 setDirection()方法可以设置其方向。该例的运行效果如下图所示:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报