在PHP上显示JFreechart画的统计图方法
在PHP上显示JFreechart画的统计图方法
发布时间:2016-12-29 来源:查字典编辑
摘要:如何在PHP上显示JFreechart?可能大部分都遇到这种情况,在JSP上的servlet能完全的显示出JFreechart画的统计图,但...

如何在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="http://www.jb51.netgetColumnChart.jsp" frameborder="0" width="100%" height="520" ></iframe>'

});

return panel;

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类