在PHP上顯示JFreechart畫的統(tǒng)計圖方法
更新時間:2013年11月03日 16:41:19 作者:
在JSP上的servlet能完全的顯示出JFreechart畫的統(tǒng)計圖,但是和其他語言混合運(yùn)用就不能顯示了,下面為大家介紹下如何在PHP上顯示JFreechart
如何在PHP上顯示JFreechart?可能大部分都遇到這種情況,在JSP上的servlet能完全的顯示出JFreechart畫的統(tǒng)計圖,但是和其他語言混合運(yùn)用就不能顯示了
我現(xiàn)在也遇到這個問題,想了半個小時終于弄明白了,實現(xiàn)的過程還是很簡單的。(個人經(jīng)驗總結(jié)而已)
解決的思路:
1.先將JFreechart生成的圖片保存在web 服務(wù)器上。
2.然后在JSP上用<img>標(biāo)簽顯示
3.通過JS將JSP導(dǎo)入PHP頁面
這樣就實現(xiàn)了。
部分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);//開始時間、結(jié)束時間、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>
實現(xiàn)導(dǎo)入JSP的JS源碼
extjs.chart.chart3D = function(nodeid,id){
var panel = new Ext.Panel({
border:false,
fitToFrame: true,//很簡單的就一個Html標(biāo)簽
html: '<iframe id="frameHelp" src="/getColumnChart.jsp" frameborder="0" width="100%" height="520" ></iframe>'
});
return panel;
}
我現(xiàn)在也遇到這個問題,想了半個小時終于弄明白了,實現(xiàn)的過程還是很簡單的。(個人經(jīng)驗總結(jié)而已)
解決的思路:
1.先將JFreechart生成的圖片保存在web 服務(wù)器上。
2.然后在JSP上用<img>標(biāo)簽顯示
3.通過JS將JSP導(dǎo)入PHP頁面
這樣就實現(xiàn)了。
部分getColumnChart.jsp源碼:
復(fù)制代碼 代碼如下:
<%
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);//開始時間、結(jié)束時間、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>
實現(xiàn)導(dǎo)入JSP的JS源碼
復(fù)制代碼 代碼如下:
extjs.chart.chart3D = function(nodeid,id){
var panel = new Ext.Panel({
border:false,
fitToFrame: true,//很簡單的就一個Html標(biāo)簽
html: '<iframe id="frameHelp" src="/getColumnChart.jsp" frameborder="0" width="100%" height="520" ></iframe>'
});
return panel;
}
您可能感興趣的文章:
相關(guān)文章
apache和php之間協(xié)同工作的配置經(jīng)驗分享
閑暇之時也會對PHP知識做一些研究與大家共享,首先工欲善其事,必先利其器,可能比喻不是很恰當(dāng),php也需要一系列的環(huán)境配置,以下是我配置php的一些手稿,經(jīng)測試已成功運(yùn)行了2013-04-04驗證坐標(biāo)在某坐標(biāo)區(qū)域內(nèi)php代碼
這篇文章主要為大家詳細(xì)介紹了驗證坐標(biāo)在某片坐標(biāo)區(qū)域內(nèi)php代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-10-10PHP7擴(kuò)展開發(fā)之基于函數(shù)方式使用lib庫的方法詳解
這篇文章主要介紹了PHP7擴(kuò)展開發(fā)之基于函數(shù)方式使用lib庫的方法,結(jié)合實例形式分析了PHP7中l(wèi)ib庫擴(kuò)展的封裝與調(diào)用相關(guān)操作技巧,需要的朋友可以參考下2018-01-01php+html優(yōu)化頁面顯示速度的方法小結(jié)
這篇文章主要為大家詳細(xì)介紹了php結(jié)合html優(yōu)化頁面顯示速度的一些常見方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-12-12php中使用preg_replace函數(shù)匹配圖片并加上鏈接的方法
preg_replace 執(zhí)行正則表達(dá)式的搜索和替換,如果只是單純的匹配字符串建議使用str_replace(),因為其執(zhí)行效率高的多2013-02-02PHP+Mysql日期時間如何轉(zhuǎn)換(UNIX時間戳和格式化日期)
UNIX時間戳和格式化日期是我們常打交道的兩個時間表示形式,Unix時間戳存儲、處理方便,但是不直觀,格式化日期直觀,但是處理起來不如Unix時間戳那么自如,所以有的時候需要互相轉(zhuǎn)換,下面給出互相轉(zhuǎn)換的幾種轉(zhuǎn)換方式2012-07-07PHP數(shù)組排序之sort、asort與ksort用法實例
這篇文章主要介紹了PHP數(shù)組排序之sort、asort與ksort用法,實例中簡單示范了sort、asort與ksort的用法,并備有注釋加以詳細(xì)說明,需要的朋友可以參考下2014-09-09jQuery+PHP發(fā)布的內(nèi)容進(jìn)行無刷新分頁(Fckeditor)
這篇文章主要介紹了jQuery結(jié)合,將Fckeditor發(fā)布的內(nèi)容進(jìn)行無刷新分頁,需要的朋友可以參考下2015-10-10