丄諦啲仇魜ヤ
          如 果 敵 人 讓 你 生 氣 , 那 說 明 你 沒 有 勝 他 的 把 握!
          posts - 6,comments - 56,trackbacks - 1

           1.JFreeReport :報表解決工具
          2.JFreeChart:Java 圖形解決方案(Application/Applet/Servlet/Jsp)
          3.JCommon :JFreeReport和JFreeChart的公共類庫
          4.JFreeDesigner :JFreeReport的報表設(shè)計工具
          下載 地址 http://www.jfree.org/jfreechart/index.html 解壓將LIB下的jfreechart-1.0.6.jar 、jcommon-1.0.10.jar、gnujaxp.jar 放到項目中即可,如果加上第三個jar(gnujaxp.jar)包有時web.xml會報錯,把它去掉就好了。

          我的環(huán)境 tomcat 6.0 ,eclipse 3.2.  mssql 
           

          <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>



          package com.report;

          import java.text.SimpleDateFormat;
          import java.util.Date;
          import java.util.Iterator;
          import java.util.List;
          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;
          import org.apache.struts.action.Action;
          import org.apache.struts.action.ActionForm;
          import org.apache.struts.action.ActionForward;
          import org.apache.struts.action.ActionMapping;
          import org.jfree.chart.ChartFactory;
          import org.jfree.chart.JFreeChart;
          import org.jfree.chart.plot.PlotOrientation;
          import org.jfree.data.category.DefaultCategoryDataset;
          import com.dao.DbApplicationDAO;

          /**
           * 處理柱狀圖
           * 
           * @version1.0 2007-11-3
           * @author王世清
           
          */

          public class CategoryAction extends Action {

              
          public ActionForward execute(ActionMapping mapping, ActionForm form,
                      HttpServletRequest request, HttpServletResponse response) 
          {

                  String year 
          = "";

                  
          /** ******JfreeChart中的制作柱狀圖類******* */

                  DefaultCategoryDataset dataset 
          = new DefaultCategoryDataset();

                  
          /** 查找當(dāng)年的請假每月的假期總數(shù)* */

                  DbApplicationDAO dbApplicationDAO 
          = new DbApplicationDAO();

                  String flag 
          = (String) request.getSession().getAttribute("flag");

                  
          if ("manager".equals(flag)) {
                      year 
          = request.getParameter("year");
                      
          // System.out.println("經(jīng)理輸入的年份是 "+ year);
                  }
           else {
                      SimpleDateFormat sd 
          = new SimpleDateFormat("yyyy");
                      Date date 
          = new Date();
                      year 
          = sd.format(date);
                  }


                  List list 
          = dbApplicationDAO.findAplicationByYear(year);
                  Iterator i 
          = list.iterator();
                  
          while (i.hasNext()) {
                      Object[] row 
          = (Object[]) i.next();
                      Integer days 
          = (Integer) row[0];
                      String month 
          = (String) row[1];
                      dataset.addValue(days, month 
          + "", month + "");

                  }

                  JFreeChart chart 
          = ChartFactory.createBarChart3D(year + " 年假期統(tǒng)計", year
                          
          + " 年假期統(tǒng)計""天數(shù)",

                  dataset, PlotOrientation.VERTICAL, 
          // 選擇水平或者垂直放

                          
          true,// 是否顯示顏色類別(地區(qū))提示

                          
          false,

                          
          false);
                  request.setAttribute(
          "chart", chart);
                  
          return mapping.findForward("go_category");
              }

          }


          顯示柱狀圖的JSP

          <%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
          <%@ page
              
          import="org.jfree.chart.JFreeChart,org.jfree.chart.servlet.ServletUtilities"%>
          <HTML>
              
          <HEAD>
                  
          <TITLE>柱狀圖</TITLE>
              
          </HEAD>
              
          <BODY bgcolor="#E0F0F8">

                  
          <%
                       JFreeChart chart
          =(JFreeChart)request.getAttribute("chart");
                       String filename 
          = ServletUtilities.saveChartAsPNG (chart, 600300null, session);
                      String graphURL 
          = request.getContextPath () + "/servlet/DisplayChart?filename=" + filename;
                   
          %>
                   
          <center>
                  
          <table>
                      
          <tr valign="top" align="center">
                          
          <td>
                              
          <%@ include file="header.jsp"%>
                          
          </td>
                      
          </tr>
                  
                      
          <tr>
                          
          <td valign="middle" align="center">
                              
          <img src="<%= graphURL %>" width="500" height="300" border="0"
                                  usemap
          ="#<%= filename %>" alt="">
                          
          </td>
                      
          </tr>
                  
          </table>
                  
          </center>
              
          </BODY>
          </HTML>


          posted on 2007-12-06 14:40 Crying 閱讀(266) 評論(1)  編輯  收藏 所屬分類: JreeChart使用

          FeedBack:
          # 柱狀圖[轉(zhuǎn)帖][TrackBack]
          2008-01-02 19:37 | 零度海陽
          轉(zhuǎn)自:http://www.aygfsteel.com/Crying/articles/165799.html 柱狀圖
          [引用提示]零度海陽引用了該文章, 地址: http://www.cnweblog.com/nm1504/archive/2008/01/02/268773.html  回復(fù)  更多評論
            

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 桦川县| 卢氏县| 建阳市| 平邑县| 长子县| 班戈县| 武威市| 灵台县| 鄂尔多斯市| 长白| 南陵县| 漳浦县| 瑞昌市| 山东省| 南澳县| 永修县| 定安县| 和龙市| 门源| 抚松县| 陆良县| 中阳县| 龙南县| 九寨沟县| 特克斯县| 浙江省| 思南县| 格尔木市| 林口县| 桂林市| 威信县| 民丰县| 洛川县| 深水埗区| 大荔县| 简阳市| 通江县| 建阳市| 浦江县| 格尔木市| 安顺市|