在PHP上显示JFreechart画的统计图方法


Posted in PHP onNovember 03, 2013

如何在PHP上显示JFreechart?可能大部分都遇到这种情况,在JSP上的servlet能完全的显示出JFreechart画的统计图,但是和其他语言混合运用就不能显示了

我现在也遇到这个问题,想了半个小时终于弄明白了,实现的过程还是很简单的。(个人经验总结而已)

解决的思路:

1.先将JFreechart生成的图片保存在web 服务器上。

2.然后在JSP上用<img>标签显示

3.通过JS将JSP导入PHP页面

这样就实现了。

部分getColumnChart.jsp源码:

<% 
String startTime = request.getParameter("startTime"); 
String endTime = request.getParameter("endTime"); 
String filter = request.getParameter("filter"); 
Charts charts = new Charts(); 
String start = startTime == null ? "2013-05-12" : startTime; 
String end = endTime == null ? "2013-11-01" : endTime; 
String filters = filter == null ? "eventtype" : filter; 
JFreeChart chart = charts 
.getPieChart(startTime, endTime, filter);//开始时间、结束时间、filter 
String filename = ServletUtilities.saveChartAsJPEG(chart, 800, 400, 
null, session); 
FileOutputStream fos_jpg = null; 
File file = new File(application.getRealPath("")+"/charts"); 
String path =request.getContextPath()+"/charts/NoData.jpg"; 
try { 
file.mkdirs(); 
fos_jpg = new FileOutputStream(file.getPath()+"/"+filename); 
ChartUtilities.writeChartAsJPEG(fos_jpg, 1.0f, chart, 800, 400, 
null); 
} catch (Exception e) { 
} finally { 
try { 
fos_jpg.close(); 
} catch (Exception e) { 
} 
} 
path = request.getContextPath()+"/charts/"+filename; 
%> 
<div align="center"> 
<img src="<%=path %>" name="图片" width=800 height=400 border=0> 
</div>

实现导入JSP的JS源码
extjs.chart.chart3D = function(nodeid,id){ 
var panel = new Ext.Panel({ 
border:false, 
fitToFrame: true,//很简单的就一个Html标签 
html: '<iframe id="frameHelp" src="/getColumnChart.jsp" frameborder="0" width="100%" height="520" ></iframe>' 
}); 
return panel; 
}
PHP 相关文章推荐
php 之 没有mysql支持时的替代方案
Oct 09 PHP
修改Zend引擎实现PHP源码加密的原理及实践
Apr 14 PHP
php生成xml简单实例代码
Dec 16 PHP
php设计模式 Mediator (中介者模式)
Jun 26 PHP
zf框架的Filter过滤器使用示例
Mar 13 PHP
PHP中strtr字符串替换用法详解
Nov 26 PHP
php实现mysql备份恢复分卷处理的方法
Dec 26 PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
Mar 27 PHP
php官方微信接口大全(微信支付、微信红包、微信摇一摇、微信小店)
Dec 21 PHP
PHP自定义图片缩放函数实现等比例不失真缩放的方法
Aug 19 PHP
thinkPHP5.0框架验证码调用及点击图片刷新简单实现方法
Sep 07 PHP
laravel5.5添加echarts实现画图功能的方法
Oct 09 PHP
php网站判断用户是否是手机访问的方法
Nov 01 #PHP
php合并js请求的例子
Nov 01 #PHP
php上传文件中文文件名乱码的解决方法
Nov 01 #PHP
PHP防止跨域提交表单
Nov 01 #PHP
PHP查询网站的PR值
Oct 30 #PHP
PHP禁止个别IP访问网站
Oct 30 #PHP
php cURL和Rolling cURL并发方式比较
Oct 30 #PHP
You might like
提升PHP执行速度全攻略(下)
2006/10/09 PHP
推荐个功能齐全的发送PHP邮件类
2007/01/03 PHP
php数组中删除元素的实现代码
2012/06/22 PHP
解析如何修改phpmyadmin中的默认登陆超时时间
2013/06/25 PHP
javaScript对象和属性的创建方法
2007/01/15 Javascript
JavaScript 乱码问题
2009/08/06 Javascript
javascript 函数声明与函数表达式的区别介绍
2013/10/05 Javascript
jquery操作select详解(取值,设置选中)
2014/02/07 Javascript
jquery1.10给新增元素绑定事件的方法
2014/03/06 Javascript
AngularJS基础 ng-model-options 指令简单示例
2016/08/02 Javascript
JQuery和PHP结合实现动态进度条上传显示
2016/11/23 Javascript
jQuery将表单序列化成一个Object对象的实例
2016/11/29 Javascript
Vue.js 实现微信公众号菜单编辑器功能(一)
2018/05/08 Javascript
NodeJS 中Stream 的基本使用
2018/07/30 NodeJs
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
2018/08/17 Javascript
jQuery实现聊天对话框
2020/02/08 jQuery
在vue中获取wangeditor的html和text的操作
2020/10/23 Javascript
[44:01]2018DOTA2亚洲邀请赛3月30日 小组赛B组 EG VS paiN
2018/03/31 DOTA
[01:02:47]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
python3读取csv和xlsx文件的实例
2018/06/22 Python
python如何实现不可变字典inmutabledict
2020/01/08 Python
python主要用于哪些方向
2020/07/05 Python
Python操作PostgreSql数据库的方法(基本的增删改查)
2020/12/29 Python
什么是触发器(trigger)? 触发器有什么作用?
2013/09/18 面试题
小学生自我评价范例
2013/09/24 职场文书
大四学生毕业自荐信
2013/11/07 职场文书
奥巴马的演讲稿
2014/05/15 职场文书
2014年实验室工作总结
2014/12/03 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书
医院办公室主任岗位职责
2015/04/01 职场文书
领导视察通讯稿
2015/07/18 职场文书
三八节活动简报
2015/07/20 职场文书
详解python的内存分配机制
2021/05/10 Python
Python 实现定积分与二重定积分的操作
2021/05/26 Python
教你怎么用PyCharm为同一服务器配置多个python解释器
2021/05/31 Python
Linux中Nginx的防盗链和优化的实现代码
2021/06/20 Servers