JFreeChar柱状图

【1. 使用默认数据集生成柱状图】

      【测试用例】

[java] view plain copy
  1. /** 默认数据集*/  
  2.     @Test  
  3.     public void test_1() {  
  4.   
  5.         DefaultCategoryDataset dataSet = new DefaultCategoryDataset();  
  6.         dataSet.addValue(100"北京""苹果");  
  7.         dataSet.addValue(200"北京""香蕉");  
  8.         dataSet.addValue(300"北京""鸭梨");  
  9.         dataSet.addValue(400"北京""橘子");  
  10.   
  11.         JFreeChart jfreeChart = ChartFactory.createBarChart3D("水果销售图""水果""销售", dataSet, PlotOrientation.VERTICAL, true,truetrue);  
  12.   
  13.         TestUtil.printPng(jfreeChart,"1.1 柱状图显示_默认数据集");  
  14.     }  

      【生成图片】

JFreeChar柱状图

【2. 使用自定义数据集生成柱状图】

      【测试用例】

[java] view plain copy
  1. /** 自定义数据集   */  
  2.     @Test  
  3.     public void test_2(){  
  4.           
  5.         double[][] data = new double[][]{  
  6.             {150,200,250,500},  
  7.             {200,250,300,550},  
  8.             {175,275,375,475},  
  9.             {225,200,325,525}  
  10.         };  
  11.           
  12.         String[] rowKeys = new String[]{"北京","上海","香港","澳门"};  
  13.         String[] columnKeys = new String[]{"苹果","鸭梨","橘子","香蕉"};  
  14.         CategoryDataset dataSet = DatasetUtilities.createCategoryDataset(rowKeys, columnKeys, data);  
  15.           
  16.         JFreeChart jfreeChart = ChartFactory.createBarChart3D("水果销售图""水果""销售", dataSet, PlotOrientation.VERTICAL, truetruetrue);  
  17.           
  18.         TestUtil.printPng(jfreeChart, "1.2 柱状图显示_自定义数据集");  
  19.     }  

      【生成图片】

JFreeChar柱状图



【3. 自定义柱状图样式】

      【测试用例】

[java] view plain copy
  1. /** 自定义 样式   */  
  2.     @Test  
  3.     public void test_3(){  
  4.           
  5.         double[][] data = new double[][]{  
  6.             {150,200,250,500},  
  7.             {200,250,300,550},  
  8.             {175,275,375,475},  
  9.             {225,200,325,525}  
  10.         };  
  11.           
  12.         String[] rowKeys = new String[]{"北京","上海","香港","澳门"};  
  13.         String[] columnKeys = new String[]{"苹果","鸭梨","橘子","香蕉"};  
  14.         CategoryDataset dataSet = DatasetUtilities.createCategoryDataset(rowKeys, columnKeys, data);  
  15.           
  16.         JFreeChart jfreeChart = ChartFactory.createBarChart3D("水果销售图""水果""销售", dataSet, PlotOrientation.VERTICAL, truetruetrue);  
  17.           
  18.         CategoryPlot plot=jfreeChart.getCategoryPlot();  
  19.         // 设置网格背景颜色  
  20.         plot.setBackgroundPaint(Color.white);  
  21.         // 设置网格竖线颜色  
  22.         plot.setDomainGridlinePaint(Color.pink);  
  23.         // 设置网格横线颜色  
  24.         plot.setRangeGridlinePaint(Color.pink);  
  25.           
  26.         // 显示每个柱的数值,并修改该数值的字体属性  
  27.         BarRenderer3D renderer=new BarRenderer3D();  
  28.         renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());  
  29.         renderer.setBaseItemLabelsVisible(true);  
  30.           
  31.         renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT));  
  32.         renderer.setItemLabelAnchorOffset(10D);    
  33.           
  34.         // 设置平行柱的之间距离  
  35.         renderer.setItemMargin(0.4);  
  36.           
  37.         plot.setRenderer(renderer);  
  38.           
  39.         TestUtil.printPng(jfreeChart, "1.3 柱状图显示_自定义样式");  
  40.     }  

      【生成图片】

JFreeChar柱状图