在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 相关文章推荐
用文本作数据处理
Oct 09 PHP
生成卡号php代码
Apr 09 PHP
php绘图中显示不出图片的原因及解决
Mar 05 PHP
thinkphp实现面包屑导航(当前位置)例子分享
May 10 PHP
php之readdir函数用法实例
Nov 13 PHP
php支付宝在线支付接口开发教程
Sep 19 PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 PHP
CI框架附属类用法分析
Dec 26 PHP
Laravel框架FormRequest中重写错误处理的方法
Feb 18 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
Oct 11 PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
Oct 30 PHP
laravel框架使用极光推送消息操作示例
Feb 15 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
php5 mysql分页实例代码
2008/04/10 PHP
php用户登录之cookie信息安全分析
2016/05/13 PHP
CodeIgniter框架基本增删改查操作示例
2017/03/23 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
2019/03/30 PHP
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
2015/04/26 Javascript
JS实现方向键切换输入框焦点的方法
2015/08/19 Javascript
JavaScript在网页中画圆的函数arc使用方法
2015/11/13 Javascript
javaScript知识点总结(必看篇)
2016/06/10 Javascript
jquery判断类型是不是number类型的实例代码
2016/10/07 Javascript
详解vue-validator(vue验证器)
2017/01/16 Javascript
selenium 与 chrome 进行qq登录并发邮件操作实例详解
2017/04/06 Javascript
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
Vue中父子组件通讯之todolist组件功能开发
2018/05/21 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
Vue替代marquee标签超出宽度文字横向滚动效果
2019/12/09 Javascript
Python3 replace()函数使用方法
2018/03/19 Python
Python 实现选择排序的算法步骤
2018/04/22 Python
Python DataFrame.groupby()聚合函数,分组级运算
2018/09/18 Python
Python 调用 Outlook 发送邮件过程解析
2019/08/08 Python
python 多进程共享全局变量之Manager()详解
2019/08/15 Python
python中for循环变量作用域及用法详解
2019/11/05 Python
python3操作注册表的方法(Url protocol)
2020/02/05 Python
Win10下用Anaconda安装TensorFlow(图文教程)
2020/06/18 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
HTML5 对各个标签的定义与规定:body的介绍
2012/06/21 HTML / CSS
Ray-Ban雷朋美国官网:全球领先的太阳眼镜品牌
2016/07/20 全球购物
英国在线滑雪板和冲浪商店:The Board Basement
2020/01/11 全球购物
Delphi笔试题
2016/11/14 面试题
销售工作人员的自我评价分享
2013/11/10 职场文书
新婚姻法离婚协议书范文
2014/11/30 职场文书
介绍信怎么写
2015/01/30 职场文书
承兑汇票延期证明
2015/06/23 职场文书
如何才能写好调研报告?
2019/07/03 职场文书
《狼牙山五壮士》读后感:宁死不屈,视死如归
2019/08/16 职场文书
JavaScript实现显示和隐藏图片
2021/04/29 Javascript