首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

jFreeChart 在jsp页下实现简单的折线图、柱状图

2012-12-19 
jFreeChart 在jsp页上实现简单的折线图、柱状图可参考资料与网址 ?官方网站 http://www.jfree.org/jfreecha

jFreeChart 在jsp页上实现简单的折线图、柱状图

可参考资料与网址

?

官方网站

http://www.jfree.org/jfreechart/index.html

官方论坛

http://www.jfree.org/phpBB2/index.php

API 文档

http://www.jfree.org/jfreechart/api/gjdoc/index.html

中文API

http://blog.sina.com.cn/u/405da78d010000ap

?

?创建柱状图
1 引入jFreechart的包 :jcommon-1.0.15.jar 、jfreechart-1.0.12.jar

2 在web.xml中加入

XML code
    <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>


3 在jsp或者servlet或者action中写

Java code
//  饼图//1、准备数据DefaultPieDataset dataset = new DefaultPieDataset();dataset.setValue("管理人员", 25);dataset.setValue("市场人员", 25);dataset.setValue("开发人员", 45);dataset.setValue("其他人员", 5);//2、生成图片JFreeChart chart = ChartFactory.createPieChart3D("公司组织架构图", dataset, true,true, false);try{ String filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, null, request.getSession()); String graphURL = request.getContextPath() + "/servlet/DisplayChart?filename=" + filename;request.setAttribute("graphURL",graphURL);} catch (Exception e){}
?



4 在页面引入

HTML code
<img src="<%= request.getAttribute("graphURL") %>"> 

对于临时文件的清除,jfreechart提供了一个实现了HttpSessionBindingListener的类ChartDeleter,
里面有个valueUnbound方法,这个方法是在session执行remove的时候被执行,
也就是在页面刚进入的时候调用
session.removeAttribute("JFreeChart_Deleter");这样会删除当前session之前生成的图表。

还有一种方法是用流输出的方式,直接,即:
注释掉上面的try中的代码,加入如下代码
ChartUtilities.writeChartAsJPEG(response.getOutputStream(),chart,500,300);
然后在显示页面引入

<img src="<%=request.getContextPath()%>/servlet"> 

?

?

?

热点排行
Bad Request.