jfreechart生成柱状图写到jsp页面并打印
来源:互联网 发布:冰岛语消失知乎 编辑:程序博客网 时间:2024/04/29 03:44
http://shop59544428.taobao.com/
<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>/DisplayChart</url-pattern>
</servlet-mapping>
<listener>
<listener-class>org.jfree.chart.servlet.ChartDeleter</listener-class>
</listener>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<style type='text/css'>
@media screen{.printhide{display:block}}
@media print{.printhide{display:none}}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<img src="testJfreechar">
<div class="printhide">
<a href="#" onclick="javascript:window.print();">打印本页</a>
</div>
</body>
</html>
/**
* 图表数据集
* @return
*/
@RequestMapping("/testJfreechar")
public void createDataset(HttpServletRequest request,ServletResponse res){
// DefaultCategoryDataset dataset = new DefaultCategoryDataset();
// dataset.addValue(500, "java图书", "java开发");
// dataset.addValue(100, "java图书", ".Net开发");
// dataset.addValue(900, "java图书", "linux系统");
double[][] data = new double[][] {{672, 766, 223, 540, 126}, {325, 521, 210, 340, 106}, {332, 256, 523, 240, 526}};
String[] rowKeys = {"苹果","梨子","葡萄"};
String[] columnKeys = {"北京","上海","广州","成都","深圳"};
CategoryDataset dataset =DatasetUtilities.createCategoryDataset(rowKeys, columnKeys, data);
StandardChartTheme standardChartTheme=new StandardChartTheme("CN");
//设置标题字体
standardChartTheme.setExtraLargeFont(new Font("隶书",Font.BOLD,20));
//设置图例的字体
standardChartTheme.setRegularFont(new Font("黑体",Font.PLAIN,15));
//设置轴向的字体
standardChartTheme.setLargeFont(new Font("黑体",Font.PLAIN,15));
//应用主题样式
ChartFactory.setChartTheme(standardChartTheme);
JFreeChart chart = ChartFactory.createBarChart3D("java图书销售统计",//图表标题
"java图书",//横轴标题
"销量(本)",//纵轴标题
dataset,//数据集
PlotOrientation.VERTICAL,//图表方向
true,//是否显示图例标识
true,//是否显示图例
true//是否支持超链接
);
CategoryPlot plot = chart.getCategoryPlot();
CategoryAxis domainAxis = plot.getDomainAxis();
//设置 columnKey 是否垂直显示
//domainAxis.setVerticalCategoryLabels(true);
//设置距离图片左端距离
domainAxis.setLowerMargin(0.1);
//设置距离图片右端距离
domainAxis.setUpperMargin(0.1);
//设置 columnKey 是否间隔显示
//domainAxis.setSkipCategoryLabelsToFit(true);
plot.setDomainAxis(domainAxis);
ValueAxis rangeAxis = plot.getRangeAxis();
//设置最高的一个柱与图片顶端的距离
rangeAxis.setUpperMargin(0.15);
//设置最低的一个柱与图片底端的距离
//rangeAxis.setLowerMargin(0.15);
plot.setRangeAxis(rangeAxis);
BarRenderer3D renderer = new BarRenderer3D();
renderer.setBaseOutlinePaint(Color.BLACK);
//设置 Wall 的颜色
renderer.setWallPaint(Color.gray);
//设置每种水果代表的柱的颜色
renderer.setSeriesPaint(0, new Color(0, 0, 255));
renderer.setSeriesPaint(1, new Color(0, 100, 255));
renderer.setSeriesPaint(2, Color.GREEN);
//设置每种水果代表的柱的 Outline 颜色
renderer.setSeriesOutlinePaint(0, Color.GREEN);
renderer.setSeriesOutlinePaint(1, Color.BLACK);
renderer.setSeriesOutlinePaint(2, Color.GREEN);
//设置每个地区所包含的平行柱的之间距离
renderer.setItemMargin(0.3);
//显示每个柱的数值,并修改该数值的字体属性
renderer.setItemLabelGenerator(new StandardCategoryItemLabelGenerator());
renderer.setItemLabelFont(new Font("黑体",Font.PLAIN,12));
renderer.setItemLabelsVisible(true);
renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(
ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT));
renderer.setItemLabelAnchorOffset(10D);
plot.setRenderer(renderer);
//设置柱的透明度
plot.setForegroundAlpha(0.6f);
//设置地区、销量的显示位置
plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_LEFT);
plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_LEFT);
try {
ChartUtilities.writeChartAsJPEG(res.getOutputStream(), chart, 500, 400);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
- jfreechart生成柱状图写到jsp页面并打印
- 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP
- 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP
- 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP
- 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP
- 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP
- 使用jfreechart在jsp页面柱状图统计
- struts中调用servlet动态生成柱状图到jsp页面
- JFreeChart输出到jsp页面
- JFreeChart 生成柱状图
- JFreeChart生成柱状图
- JFreeChart生成柱状图
- jfreechart柱状图生成
- JFreeChart生成柱状图实例
- JFreeChart生成柱状图
- jfreechart生成柱状图
- JfreeChart将图形输出到jsp页面
- JSP与jfreechart集成 柱状图
- JVM资源监控
- c++标准异常类的继承实现
- Struts-分页表单
- oracle 11g 学习笔记 10_30
- django 没有设置404错误页面的时候 ,尽量自定义404页面
- jfreechart生成柱状图写到jsp页面并打印
- 忧雨的伤感空间日志发布:左手夹烟,右手夹寂寞
- Redis
- java 数据库连接池 c3p0 使用及参数详解,支持重连
- 教你写一个可以运行java的bat文件
- (3) double-linked list: insque remque
- android4.0.4平台关闭自动休眠功能-基于x210ii开发板
- local index and global index [转]
- 揭开嵌入式C面试题背后的玄机