JFreeChart(二.柱状图.2)
2015-09-27 10:06
375 查看
public class BarChart4 {
//主要是返回图片的名称
public static String getBarChart(HttpSession session)throws Exception{
//构造数据集(默认的无颜色)
//DefaultCategoryDataset dataset=new DefaultCategoryDataset();
double [][]data=new double[][]{{1320,1110,1123,321},{720,210,1423,1321},{830,1310,1256,700},{400,256,369,800}};
String []rowKeys={"苹果","香蕉","橘子","梨子"};
String []columnKeys={"苏州","北京","上海","广州"};
CategoryDataset dataset= DatasetUtilities.createCategoryDataset(rowKeys,columnKeys,data);
//创建图片
JFreeChart chart=ChartFactory.createBarChart3D("水果销售统计图", "水果", "销售", dataset, PlotOrientation.VERTICAL, true, true, true);
//*************顶上显示值*******************************
CategoryPlot plot= chart.getCategoryPlot();
// 设置网格背景颜色
plot.setBackgroundPaint(Color.white);
// 设置网格竖线颜色
plot.setDomainGridlinePaint(Color.pink);
// 设置网格横线颜色
plot.setRangeGridlinePaint(Color.pink);
// 显示每个柱的数值,并修改该数值的字体属性
BarRenderer3D renderer=new BarRenderer3D();
renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
renderer.setBaseItemLabelsVisible(true);
renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT));
renderer.setItemLabelAnchorOffset(10D);
// 设置平行柱的之间距离
renderer.setItemMargin(0.4);
plot.setRenderer(renderer);
//*************************************************************************************
String filename=ServletUtilities.saveChartAsPNG(chart,700,500,null,session);
return filename;
}
//********************************************************
//主要是返回图片的名称
public static String getBarChart(HttpSession session)throws Exception{
//构造数据集(默认的无颜色)
//DefaultCategoryDataset dataset=new DefaultCategoryDataset();
double [][]data=new double[][]{{1320,1110,1123,321},{720,210,1423,1321},{830,1310,1256,700},{400,256,369,800}};
String []rowKeys={"苹果","香蕉","橘子","梨子"};
String []columnKeys={"苏州","北京","上海","广州"};
CategoryDataset dataset= DatasetUtilities.createCategoryDataset(rowKeys,columnKeys,data);
//创建图片
JFreeChart chart=ChartFactory.createBarChart3D("水果销售统计图", "水果", "销售", dataset, PlotOrientation.VERTICAL, true, true, true);
//*************顶上显示值*******************************
CategoryPlot plot= chart.getCategoryPlot();
// 设置网格背景颜色
plot.setBackgroundPaint(Color.white);
// 设置网格竖线颜色
plot.setDomainGridlinePaint(Color.pink);
// 设置网格横线颜色
plot.setRangeGridlinePaint(Color.pink);
// 显示每个柱的数值,并修改该数值的字体属性
BarRenderer3D renderer=new BarRenderer3D();
renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
renderer.setBaseItemLabelsVisible(true);
renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT));
renderer.setItemLabelAnchorOffset(10D);
// 设置平行柱的之间距离
renderer.setItemMargin(0.4);
plot.setRenderer(renderer);
//*************************************************************************************
String filename=ServletUtilities.saveChartAsPNG(chart,700,500,null,session);
return filename;
}
//********************************************************
相关文章推荐
- 面对对象思想6
- 【LeetCode】3Sum 解决报告
- java虚拟机参数
- yii2的rules()函数
- scala入门
- LeetCode Subsets II
- 23种设计模式
- C++机器学习古典材料
- 单例模式的疑问
- ID3算法
- 剑指 offer:栈的压入、弹出序列
- vim插件管理利器——vundle
- extern c
- [转载]Java程序员掌握的10大项知识体系--精通太难说出口
- 数据库的事务ACID性质
- JDBC连接数据库的步骤
- cookie和session
- Spinner的setOnItemSelectedListener不起作用
- 用 CocoaPods 安装 React Native
- 约瑟夫问题(数到3出局)----链表操作