簡單的JFreeChartDEMO

          Posted on 2008-09-01 00:39 橡皮人 閱讀(143) 評論(0)  編輯  收藏
            這里就JFreeChart寫一個小小的餅圖DEMO,其中的數據是從數據庫中取出來的,所有代碼有些比較。。。大家需要的改改就可以了。首先寫餅圖之前要先引入二個Jar文件:jfreechart-1.0.10.jar和jcommon-1.0.13.jar

          Code如下:
          <%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
          <%@ page import="org.jfree.data.general.DefaultPieDataset"%>
          <%@ page import="org.jfree.chart.*"%>
          <%@ page import="org.jfree.chart.plot.*"%>
          <%@ page import="org.jfree.chart.servlet.ServletUtilities"%>
          <%@ page import="org.jfree.chart.labels.StandardPieToolTipGenerator"%>
          <%@ page import="org.jfree.chart.urls.StandardPieURLGenerator"%>
          <%@ page import="org.jfree.chart.entity.StandardEntityCollection"%>
          <%@ page import="java.io.*"%>
          <%@ page import="com.csthit.store.dao.*" %>
          <%@ page import="com.csthit.store.vo.*" %>

          <html>
            
          <head>
            
          <%
                TypeDAO typedao
          =new TypeDAO();
              SalesDAO sales
          =null;
              FatherType father
          =null;
              List list
          =null;
              list
          =typedao.getFatherType();
                
            
          %>
            
          <title>銷售圖</title>
              
          <%
              DefaultPieDataset data 
          = new DefaultPieDataset(); 
              
          //數據動態初始化
              
          for(int i=0;i<list.size();i++) {
                  sales
          =new SalesDAO();
                  father
          =(FatherType)list.get(i);
                  data.setValue(father.getType(),sales.queryQuantityByType(father.getType())); 
          //設值
                  
              }
            
           
              PiePlot3D plot 
          = new PiePlot3D(data);//生成一個3D餅圖 
              JFreeChart chart 
          = new JFreeChart("",JFreeChart.DEFAULT_TITLE_FONT, plot, true); 
              chart.setBackgroundPaint(java.awt.Color.lightGray);
          //可選,設置圖片背景色 
              chart.setTitle(
          "圖書銷量統計圖");//可選,設置圖片標題 
              plot.setToolTipGenerator(
          new StandardPieToolTipGenerator()); 
              StandardEntityCollection sec 
          = new StandardEntityCollection(); 
              ChartRenderingInfo info 
          = new ChartRenderingInfo(sec); 
              PrintWriter w 
          = new PrintWriter(out);//輸出MAP信息 
              
          //500是圖片長度,300是圖片高度
              
          String filename = ServletUtilities.saveChartAsJPEG(chart,500,300,info,session); 
              ChartUtilities.writeImageMap(w,
          "map0",info,false); 
              
          String graphURL = request.getContextPath() + "/servlet/DisplayChart?filename=" + filename;
              
          %>
            
          </head>
            
            
          <body>
               
          <center>
             
          <img src="<%= graphURL %>" width=500 height=300 border=0 usemap="#map0">
          </center> 
            
          </body>
          </html>
          XML配置如下:
            <servlet>
                   
          <servlet-name> DisplayChart </servlet-name>
                   
          <servlet-class> org.jfree.chart.servlet.DisplayChart </servlet-class>
               
          </servlet>
               
          <servlet-mapping>
                   
          <servlet-name> DisplayChart </servlet-name>
                   
          <url-pattern> /servlet/DisplayChart </url-pattern>
               
          </servlet-mapping>

          效果顯示如下:


          各位晚安~



          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          posts - 28, comments - 5, trackbacks - 0, articles - 0

          Copyright © 橡皮人

          主站蜘蛛池模板: 芒康县| 涿鹿县| 凤阳县| 天门市| 罗源县| 郯城县| 丽江市| 鹰潭市| 江陵县| 韶关市| 楚雄市| 大荔县| 枝江市| 高青县| 宁陕县| 绥阳县| 苍南县| 永善县| 资溪县| 封丘县| 灵寿县| 罗源县| 阿合奇县| 湘潭县| 阜新| 仁化县| 沙田区| 绥滨县| 防城港市| 洞头县| 淮北市| 河津市| 来安县| 河南省| 崇仁县| 商丘市| 集安市| 茶陵县| 乐安县| 阿拉善盟| 霍林郭勒市|