var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-20738293-1']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script')"/>
<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jutleo
    歡迎走進有風的地方~~
    posts - 63,  comments - 279,  trackbacks - 0
            說完iReport+jasperReport之scriptlet 下來就得看看圖表了,jasperReport的圖表完全借助于外部的繪圖工具,charts和JFreeChart,其中JFreeChart是目前java最火的一個繪圖工具了,還是引用JFreeChart簡單使用 來實現我們的圖表吧,說到這里澄清一下,本篇寫的是jasperReport的圖表,下來會專門寫一篇關于jasperReport圖片報表。
            jasperReport不重復發明車輪,在報表中是以一個變量的方式引入外部圖表的,下來我們看看是怎么實現
    的,新建一變量jfreeChart 如圖:

            緊接著我們在報表上放置一圖片控件,下來一篇我會詳細說說圖片問題,右擊設置圖片控件屬性,如圖所示:

    net.sf.jasperreports.engine.JRRenderable為jasperReport一個專門用來處理圖表問題公共接口,一切OK,現在就是這個變量怎么才能吧jfreechart傳遞到報表中呢,還記得上篇的scriptlet嗎?
    新建一JChartReportDemo.java類,繼承自JRDefaultScriptlet,當然要實現那些方法不過大部分我們都是空實現而已,我們只要在afterReportInit方法內繪制圖表然后在set進去我們定義的那個變量即可:
    public void afterReportInit() throws JRScriptletException {
            
            
    //create pie chart dataset
            DefaultPieDataset dateset = new DefaultPieDataset();

            
    //set dataset value
            dateset.setValue("Chinese"108);
            dateset.setValue(
    "Math"110);
            dateset.setValue(
    "English"74);
            dateset.setValue(
    "Science Department"226);
            
            
    /*
             * create jfreeChart object
             * the first parameter is pie chart title
             * the secend parameter is dataset of pie chart
             * the three parameter is boolean value,create chart note
             * the four parameter is boolean value,it's a tooltip of move mouse on
             * configure chart to generate URLs,It's get a PiePlot3D object
             * 
             
    */

            JFreeChart freeChart 
    = ChartFactory.createPieChart3D("Report Pie Chart", dateset, truetruefalse);
            
            PiePlot3D plot3D 
    = (PiePlot3D) freeChart.getPlot();
            plot3D.setNoDataMessage(
    "No data to display");
            
            
    // set variable "jfreeChart" value
            this.setVariableValue("jfreeChart"new JFreeChartRenderer(freeChart));
        }
    其中plot3D.setNoDataMessage("No data to display");這一句的意思是當沒有顯示出圖表或是圖表沒有數據不顯示時會顯示我們定義的這些信息。
    this.setVariableValue("jfreeChart"new JFreeChartRenderer(freeChart));
    這一句當然是set數據了,JFreeChartRenderer這個類是JRRenderable接口的間接實現,從API上看jasperReport已不推薦我們使用了。
        OK,我們test一下吧!JChartReportMain.java
    package org.bulktree.ireport.chart;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.InputStream;
    import java.util.HashMap;

    import net.sf.jasperreports.engine.JREmptyDataSource;
    import net.sf.jasperreports.engine.JasperCompileManager;
    import net.sf.jasperreports.engine.JasperFillManager;
    import net.sf.jasperreports.engine.JasperPrint;
    import net.sf.jasperreports.engine.JasperReport;
    import net.sf.jasperreports.view.JasperViewer;

    /**
     * 
    @author bulktree Email: laoshulin@gmail.com
     * @date Nov 28, 2008
     
    */

    public class JChartReportMain {
        
    public static void main(String[] args) {
            String path 
    = "D:/workspace/JFreeChartReportDemo.jrxml";

            File file 
    = new File(path);
            InputStream in;
            
    try {
                HashMap parameters 
    = new HashMap();
                parameters.put(
    "ReportTitle""LAOSHULIN");
                in 
    = new FileInputStream(file);
                JasperReport jasperReport 
    = JasperCompileManager.compileReport(in);
                JasperPrint jasperPrint 
    = JasperFillManager.fillReport(jasperReport,
                        parameters, 
    new JREmptyDataSource());
                JasperViewer viewer 
    = new JasperViewer(jasperPrint);
                viewer.setVisible(
    true);
            }
     catch (Exception e) {
                e.printStackTrace();
            }

        }

    }

    看過前面幾篇應該對這個相當熟悉了吧!
    posted on 2008-12-19 10:04 凌晨風 閱讀(8986) 評論(16)  編輯  收藏 所屬分類: iReport + JasperReport 系列

    FeedBack:
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-03-16 13:32 | shuaijie

    你好,看到你的文章,故想要一份你的JasperReport(HTML格式的圖表)的代碼,麻煩您了,謝謝。  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-03-16 13:32 | shuaijie
    我的郵箱是:shuaijie.zhi@gmail.com,謝謝你了。  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-03-19 11:23 | 凌晨風
    不好意思,沒有例子代碼有問題大家可以交流啊  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-03-26 20:06 | wwm
    為什么我生成的報表再WEB中圖片顯示不出來呢  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)[未登錄]
    2009-03-27 08:45 | 西西
    你好,想交流一下傳參數到圖表的問題,QQ:48322221  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-03-27 09:17 | 凌晨風
    傳遞參數和普通的參數傳遞是一樣的  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-04-01 16:08 | zhangb310
    你好:
    我用的是ireport 工具生成報表, ireport怎么樣和jfreechart結合使用,
    還有我在ireport中java程序怎么用啊?
      回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-04-01 16:10 | zhangb310
    新手
    求教ireport的深入問題.
    msn:zhangb310@hotmail.com
      回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-04-01 16:17 | 凌晨風
    @zhangb310
    scriptlet
      回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)[未登錄]
    2009-04-16 17:29 | 1
    我做出來的圖表,Html頁面圖片為什么無法刷新?  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-06-22 11:29 | ps
    @shuaijie

    你自己寫啦。。要別人的代碼!!
      回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-07-22 16:49 | XX某
    Html不出圖片
    怎么解決哦!
    QQ:3039410790  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-11-09 11:49 | tt
    JChartReportDemo.java這個類你是怎么注冊進去的呢?  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2009-11-23 17:28 | tgm
    能給出html形式的jfreechart不?  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)
    2012-05-09 00:37 |
    求web中與struts2結合使用的,我的郵箱是yuchensuifeng@hotmail.com,謝謝  回復  更多評論
      
    # re: iReport+jasperReport之JFreeChart(圖表報表)[未登錄]
    2012-10-18 17:35 | sky
    你好!
    我用的是ireport 工具生成報表, ireport怎么樣和jfreechart結合使用,
    還有我在ireport中java程序怎么用啊?
    怎樣ireport生產線圖或柱狀圖的橫縱坐標軸刻度大小?求解決。
    我qq:425023633 郵箱:skytoxiao@163.com  回復  更多評論
      

    <2008年12月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    常用鏈接

    留言簿(11)

    我參與的團隊

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    新聞分類

    新聞檔案

    收藏夾

    圍脖

    最新隨筆

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲免费电影网站| 日本免费一区二区三区四区五六区| xxxx日本免费| 亚洲春色另类小说| AV大片在线无码永久免费| 亚洲婷婷综合色高清在线| 在线观看免费中文视频| 亚洲视频在线观看网址| 可以免费看黄的网站| 天堂亚洲国产中文在线| 成人无遮挡毛片免费看| 亚洲av永久无码天堂网| 全部免费国产潢色一级| 九九全国免费视频| 亚洲色偷拍另类无码专区| 免费观看男人吊女人视频| 亚洲色图.com| 两个人的视频高清在线观看免费| 亚洲人成网站999久久久综合| 超pen个人视频国产免费观看| 免费无遮挡无遮羞在线看| 亚洲人成中文字幕在线观看| 日日麻批免费40分钟无码| 亚洲精品国产手机| 日韩一级免费视频| av网站免费线看| 亚洲综合色丁香麻豆| 天天摸天天操免费播放小视频| 香蕉视频免费在线| 亚洲国产天堂在线观看| 蜜桃视频在线观看免费网址入口| 日日摸日日碰夜夜爽亚洲| 亚洲色WWW成人永久网址| 成人免费激情视频| 国产成人综合久久精品亚洲| 亚洲人成伊人成综合网久久久| 四虎在线最新永久免费| 美女扒开尿口给男人爽免费视频 | 全部免费毛片在线| 国产羞羞的视频在线观看免费| 亚洲AV无码一区二区三区在线|