`
ryan_ncu
  • 浏览: 68785 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

用JFreeChart实现简单的柱状图和饼状图

    博客分类:
  • JAVA
阅读更多
用JFreeChart实现简单的柱状图和饼状图,简单便于理解.
java 代码
  1. package test;   
  2.   
  3. import java.io.FileOutputStream;   
  4. import java.io.IOException;   
  5.   
  6. import org.jfree.data.category.CategoryDataset;   
  7. import org.jfree.data.category.DefaultCategoryDataset;   
  8. import org.jfree.data.general.DefaultPieDataset;   
  9. import org.jfree.chart.*;   
  10. import org.jfree.chart.plot.*;   
  11.   
  12. public class ChartDemo {   
  13.   
  14.     public static void main(String[] args)    
  15.     {   
  16.         ChartDemo chartD = new ChartDemo();   
  17.         chartD.createBarDemo("bar1.jpg");   
  18.         chartD.createPieDemo("pie.jpg");   
  19.            
  20.     }   
  21.        
  22.     //创建柱状图   
  23.     public void createBarDemo(String jpgname)   
  24.     {   
  25.         CategoryDataset dataset = getBarDataset();   
  26.         JFreeChart chart = ChartFactory.createBarChart3D(   
  27.                 "水果产量图""水果","产量", dataset, PlotOrientation.VERTICAL,    
  28.                 true,false,false);   
  29.            
  30.         FileOutputStream jpg = null;   
  31.         try {   
  32.             jpg = new FileOutputStream(jpgname);   
  33.             ChartUtilities.writeChartAsJPEG(jpg,0.5f,chart,400,300,null);   
  34.                
  35.                
  36.         } catch (Exception e) {   
  37.             // TODO 自动生成 catch 块   
  38.             e.printStackTrace();   
  39.         }   
  40.         finally  
  41.         {   
  42.             try {   
  43.                 jpg.close();   
  44.             } catch (IOException e) {   
  45.                 // TODO 自动生成 catch 块   
  46.                 e.printStackTrace();   
  47.             }   
  48.         }   
  49.     }   
  50.   
  51.     //获取柱状图数据   
  52.     private CategoryDataset getBarDataset() {   
  53.         DefaultCategoryDataset dataset = new DefaultCategoryDataset();   
  54.         dataset.addValue(100"北京""苹果");   
  55.         dataset.addValue(200"上海""梨子");   
  56.         dataset.addValue(300"南昌""葡萄");   
  57.         dataset.addValue(400"海南""香蕉");   
  58.         dataset.addValue(500"北京""荔枝");   
  59.         dataset.addValue(-250"上海""荔枝");   
  60.         return dataset;   
  61.     }   
  62.        
  63.     //创建饼图   
  64.     public void createPieDemo(String jpgname)   
  65.     {   
  66.         DefaultPieDataset dataset = getPieDataset();   
  67.         JFreeChart chart = ChartFactory.createPieChart3D("水果产量", dataset, truetruetrue);   
  68.            
  69.         FileOutputStream jpg = null;   
  70.         try {   
  71.             jpg = new FileOutputStream(jpgname);   
  72.             ChartUtilities.writeChartAsJPEG(jpg,0.5f,chart,400,300,null);   
  73.                
  74.                
  75.         } catch (Exception e) {   
  76.             // TODO 自动生成 catch 块   
  77.             e.printStackTrace();   
  78.         }   
  79.         finally  
  80.         {   
  81.             try {   
  82.                 jpg.close();   
  83.             } catch (IOException e) {   
  84.                 // TODO 自动生成 catch 块   
  85.                 e.printStackTrace();   
  86.             }   
  87.         }   
  88.     }   
  89.   
  90.     //获取饼图数据   
  91.     private DefaultPieDataset getPieDataset() {   
  92.         DefaultPieDataset dataset = new DefaultPieDataset();   
  93.         dataset.setValue("苹果"100);   
  94.         dataset.setValue("梨子"200);   
  95.         dataset.setValue("葡萄"300);   
  96.         dataset.setValue("荔枝"400);   
  97.         dataset.setValue("香蕉"500);   
  98.         dataset.setValue("枣子"600);   
  99.         return dataset;   
  100.     }   
  101.        
  102. }   
分享到:
评论
1 楼 hero_2010 2008-08-16  
谢谢 环境什么的需要的jar包

相关推荐

Global site tag (gtag.js) - Google Analytics