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

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

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

    把困難踩在腳下

    迎難而上

     

    使用JFreeChart生成圖表

    要求:運用開源的JFreeChart生成一個柱形圖。

    新建一個project,將JFreeChar的jar包導入到該project,然后新建一個SalesCountServlet  .java

    代碼如下:

     

    package com.dr.demo; 

    import java.awt.Color;
    import java.awt.Font;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException; 

    import org.jfree.chart.ChartFactory;
    import org.jfree.chart.ChartUtilities;
    import org.jfree.chart.JFreeChart;
    import org.jfree.chart.axis.CategoryAxis;
    import org.jfree.chart.axis.CategoryLabelPositions;
    import org.jfree.chart.axis.ValueAxis;
    import org.jfree.chart.plot.CategoryPlot;
    import org.jfree.chart.plot.PlotOrientation;
    import org.jfree.chart.title.TextTitle;
    import org.jfree.data.category.CategoryDataset;
    import org.jfree.data.category.DefaultCategoryDataset; 

    public class SalesCountServlet  

        
    protected static void doGet() {
            System.out.println(
    "圖表已經建立!");
            CategoryDataset dataset 
    = getDataSet();
            String fileName 
    = "SalesCount.jpg";//文件名稱
            JFreeChart chart = ChartFactory.createBarChart3D("產品銷量圖"// 圖表標題
                    "產品"// 目錄軸的顯示標簽
                    "銷量"// 數值軸的顯示標簽
                    dataset, // 數據集
                    PlotOrientation.VERTICAL, // 圖表方向:水平、垂直
                    true// 是否顯示圖例(對于簡單的柱狀圖必須是false)
                    false// 是否生成工具
                    false // 是否生成URL鏈接
                    );
            configFont(chart);
    //設置中文格式 

            FileOutputStream fos_jpg 
    = null;
            
    try {
                String statImagePath 
    = "d:";//存放圖表的路徑
                try {
                    fos_jpg 
    = new FileOutputStream(statImagePath+ fileName);
                }
     catch (FileNotFoundException e) {
                    e.printStackTrace();
                }

                
    try {
                    ChartUtilities.writeChartAsJPEG(fos_jpg, 
    0.5f, chart, 400300,null);
                }
     catch (IOException e) {
                    e.printStackTrace();
                }

            }
     finally {
                
    try {
                    fos_jpg.close();
                }
     catch (Exception e) {
                    e.printStackTrace();
                }

            }

        }

         
    public static void configFont(JFreeChart chart){   
                
    // 配置字體   
                Font xfont = new Font("宋體",Font.PLAIN,12) ;// X軸   
                Font yfont = new Font("宋體",Font.PLAIN,12) ;// Y軸   
                Font kfont = new Font("宋體",Font.PLAIN,12) ;// 底部   
                Font titleFont = new Font("隸書", Font.BOLD , 25) ; // 圖片標題   
                CategoryPlot plot = chart.getCategoryPlot();// 圖形的繪制結構對象   
                
    // 圖片標題   
                chart.setTitle(new TextTitle(chart.getTitle().getText(),titleFont));   
                
    // 底部   
                chart.getLegend().setItemFont(kfont);   
                
    // X 軸   
                CategoryAxis domainAxis = plot.getDomainAxis();      
                domainAxis.setLabelFont(xfont);
    // 軸標題   
                domainAxis.setTickLabelFont(xfont);// 軸數值     
                domainAxis.setTickLabelPaint(Color.BLUE) ; // 字體顏色   
                domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45); // 橫軸上的label斜顯示    
                
    // Y 軸   
                ValueAxis rangeAxis = plot.getRangeAxis();      
                rangeAxis.setLabelFont(yfont);    
                rangeAxis.setLabelPaint(Color.BLUE) ; 
    // 字體顏色   
                rangeAxis.setTickLabelFont(yfont);     
            }
      

        
    private static CategoryDataset getDataSet() {
            DefaultCategoryDataset dataset 
    = new DefaultCategoryDataset();
                dataset.addValue(
    20"銷售圖表""蘋果");
                dataset.addValue(
    20"銷售圖表""");
                dataset.addValue(
    30"銷售圖表""香蕉");
                dataset.addValue(
    40"銷售圖表""葡萄");
                dataset.addValue(
    50"銷售圖表""桔子");
            
    return dataset;
        }

        
    public static void main(String args[]){
            doGet();
        }

    }
     

    運行程序后就會在d盤根目錄下找到一個SalesCount.jpg的文件,打開顯示結果如下:

    SalesCount

    希望各位大蝦不吝賜教!

    posted on 2011-01-18 17:14 馮魁 閱讀(430) 評論(0)  編輯  收藏


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


    網站導航:
     

    導航

    統計

    公告

    快樂每一天!

    Everything is an object!

    常用鏈接

    留言簿(2)

    隨筆檔案

    學習網站

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费看又爽又黄禁片视频1000| 亚洲精品456在线播放| 在线观看av永久免费| 久久一区二区三区免费| 国产精品亚洲综合网站| 免费无码作爱视频| 菠萝菠萝蜜在线免费视频| 精品日韩99亚洲的在线发布| 亚洲v高清理论电影| 亚洲中文字幕在线观看| 亚洲精品无码久久久久AV麻豆| 成人a视频片在线观看免费| 免费成人福利视频| 日韩免费的视频在线观看香蕉| 久久久久国色AV免费观看| 自拍偷自拍亚洲精品偷一| 亚洲高清乱码午夜电影网| 亚洲色偷偷色噜噜狠狠99网| 亚洲一区二区三区精品视频| 亚洲视频在线观看视频| 久久久久亚洲精品天堂| 日本免费高清一本视频| 国产在线国偷精品产拍免费| 免费毛片a在线观看67194 | JLZZJLZZ亚洲乱熟无码| 高清在线亚洲精品国产二区| 亚洲A∨午夜成人片精品网站| 色www永久免费视频| 大学生一级特黄的免费大片视频| 亚洲国产精品免费观看| 国产妇乱子伦视频免费| 成人免费一级毛片在线播放视频| 人与禽交免费网站视频| 1000部拍拍拍18勿入免费凤凰福利| 最近最新高清免费中文字幕| 日韩在线永久免费播放| 久久精品国产免费观看 | 亚洲熟妇av一区二区三区下载| 久久精品国产亚洲av麻豆色欲| 91在线亚洲精品专区| 亚洲人成777在线播放|