`

jFreechart学习--柱状图

 
阅读更多
后台的代码和前台的jsp页面结合起来,然后在web页面中显示出柱状图片
后台代码:
public static JFreeChart createChart() {
		double[][] data = new double[][] { { 1310, 1220, 1110, 1000 },
				{ 720, 700, 680, 640 }, { 1130, 1020, 980, 800 },
				{ 440, 400, 360, 300 } };
		String[] rowKeys = { "猪肉", "牛肉", "鸡肉", "鱼肉" };
		String[] columnKeys = { "广州", "深圳", "东莞", "佛山" };

		CategoryDataset dataset = DatasetUtilities.createCategoryDataset(
				rowKeys, columnKeys, data);

		JFreeChart chart = ChartFactory.createBarChart3D("肉类销量统计图", "肉类", "销量",
				dataset, PlotOrientation.VERTICAL, true, true, false);
		// 解决中文乱码问题
		CategoryPlot plot = chart.getCategoryPlot();
		CategoryAxis domainAxis = plot.getDomainAxis();
		NumberAxis numberAxis = (NumberAxis) plot.getRangeAxis();

		TextTitle textTitle = chart.getTitle();
		textTitle.setFont(new Font("黑体", Font.PLAIN, 20));
		domainAxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 11));
		domainAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));
		numberAxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 12));
		numberAxis.setLabelFont(new Font("黑体", Font.PLAIN, 12));
		chart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12));

		// 设置网格背景颜色
		plot.setBackgroundPaint(Color.white);

		// 设置网格横线颜色
		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.3);
		plot.setRenderer(renderer);

		// 设置地区、销量的显示位置
		// 将下方的“肉类”放到上方
		plot.setDomainAxisLocation(AxisLocation.TOP_OR_RIGHT);

		// 默认放在左边的“销量”放到右边
		plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_RIGHT);
		return chart;

	}

 前台代码

<%@page import="easy.WebHistogram"%>
<%@page import="org.jfree.chart.servlet.ServletUtilities"%>
<%@ 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>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Histogram</title>
</head>
<body>
	<%
		String filename = ServletUtilities.saveChartAsJPEG(
				WebHistogram.createChart(), 800, 600, session);
		String graphURL = request.getContextPath() + "/Histogram?filename="
				+ filename;
	%>
	<div align="center">
		<img alt="" src="<%=graphURL%>">
	</div>
</body>
</html>

 

还有web.xml 的配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
	<display-name>Histogram</display-name>
	<welcome-file-list>
		<welcome-file>index.html</welcome-file>
		<welcome-file>index.htm</welcome-file>
		<welcome-file>index.jsp</welcome-file>
		<welcome-file>default.html</welcome-file>
		<welcome-file>default.htm</welcome-file>
		<welcome-file>default.jsp</welcome-file>
	</welcome-file-list>
	
	<servlet>
		<servlet-name>Histogram</servlet-name>
		<servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>Histogram</servlet-name>
		<url-pattern>/Histogram</url-pattern>
	</servlet-mapping>
</web-app>

 

最后的效果



 

  • 大小: 142.2 KB
分享到:
评论

相关推荐

    jfreechart1.0.3-demo-src

    JFreeChart 是一个广泛使用的 Java 图形库,它提供了丰富的图表类型,包括饼图、柱状图、线图、散点图等,使得开发者能够在 Java 应用程序中方便地创建高质量的图表。"jfreechart1.0.3-demo-src" 是 JFreeChart ...

    jfreechart,jfreechart-1.0.13,jfreechart-1.0.13,jfreechart

    JFreeChart是Java中最优秀的绘图工具之一,它支持多种图表类型,包括折线图、柱状图、饼图、散点图、甘特图以及复杂的组合图等。这些图表不仅适用于数据展示,还可以用于数据分析和报告生成,广泛应用于金融、科学、...

    Jfreechart--demo

    JFreeChart是一款广泛使用的开源Java库,它能够帮助开发者创建各种高质量的图表,包括柱状图、饼图、线形图、散点图、面积图、甘特图以及更复杂的组合图表等。在Java应用程序、Web应用和报告系统中,JFreeChart经常...

    JFreeChart画图 饼状图 单组柱状图 多组柱状图 堆积柱状图 折线图

    JFreeChart 饼状图 柱状图 柱状图 堆积柱状图 折线图 这个是我特地开发的一个用JFreeChart开发的用来画图的项目,已经开发成形了各种项目的各种需求的项目,并且自己可以拓展,根据需求修改代码,完成项目的需要。 ...

    jfreechart的使用-柱状图

    学习这个示例,读者不仅可以掌握如何使用jFreeChart创建柱状图,还能了解到如何结合其他开源工具(如Hibernate)来处理数据并进行可视化展示。对于Java开发者,特别是那些需要进行数据分析和报表展示的人来说,这是...

    jfreechart-1.0.14-demo.jar 对应的源码

    JFreeChart 是一个广泛使用的 Java 图表库,它为开发者提供了创建各种高质量图表的能力,包括饼图、柱状图、线图、散点图、甘特图等。在1.0.14版本中,其提供的`jfreechart-1.0.14-demo.jar`是一个演示程序,展示了...

    jfreechart-1.0.6-demo源码

    JFreeChart是一款流行的开源Java图表库,它提供了一系列丰富的图表类型,包括折线图、柱状图、饼图、散点图等,广泛应用于数据分析、报表生成以及GUI应用的可视化展示。在本文中,我们将深入探讨"jfreechart-1.0.6-...

    jfreechart 绘制横向立体柱状图

    利用jfreechart绘制的横向立体柱状图,横坐标是数值,纵坐标是数据分类,需要提前引入jfreechart包文件到工程里,才不会报错

    jfreechart-1.0.19

    这个库提供了广泛的数据可视化功能,包括折线图、柱状图、饼图、散点图、甘特图以及更多其他类型,使得开发者无需深入了解图形编程细节就能轻松地生成高质量的图表。 **主要特性** 1. **多类型图表**:JFreeChart ...

    jfreeChart---DEMO

    JFreeChart是一个流行的开源Java库,它提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图等,用于生成高质量的2D图表。在本示例中,我们关注的是"jfreechart的折线图demo",它演示了如何通过Servlet封装数据...

    JFreeChart动态加载柱状图

    JFreeChart创建柱状图,之前网上很多都是创建柱状图的,静态的。数据更新之后柱状图随之改变,代码实现详见附件代码。所需要的jar包是jfreechart-1.0.13.jar,gnujaxp.jar,jcommon-1.0.16.jar

    jfreechart 生成折线图,饼图,柱状图,堆栈柱状图

    JFreeChart是一个流行的Java库,用于生成各种类型的图表,包括折线图、饼图和柱状图,甚至堆栈柱状图。这个压缩包中的"CreateChartServiceImpl.java"文件很可能包含了一个实现这些功能的服务类。 首先,我们要理解...

    jfreechart--类说明

    JFreeChart 是一个开源的Java库,用于生成高质量的图表,包括饼图、柱状图、线图、散点图、甘特图等。这个库广泛应用于数据分析、报告生成、Web应用以及各种需要可视化的Java项目中。在“jfreechart--类说明”中,...

    jfreechart-1.0.19-demo.src

    JFreeChart是一个流行的开源Java库,用于创建各种图表,如折线图、柱状图、饼图、散点图等。它提供了丰富的功能,使得开发者能够在Java应用程序中轻松地生成高质量的图形。这个“jfreechart-1.0.19-demo.src”压缩包...

    JFreeChart-1.0.19 的jar包以及源代码

    JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,并且可以产生PNG和JPEG格式的输出,还可以与PDF和EXCEL关联。

    jfreechart---lib.zip

    JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,可直接输出成图片文件,亦可被导出PDF或Excel文档。

    jfreechart 堆栈柱状图跟折线图结合拼接

    jfreechart 堆栈柱状图跟折线图结合拼接 jar包请戳http://download.csdn.net/detail/a156435646/7424707

    jfreechart-1.0.13-demo.src

    JFreeChart 是一个广泛使用的 Java 图表库,它为开发者提供了创建各种高质量图表的能力,包括饼图、柱状图、线图、散点图、甘特图等。在 JFreeChart 的1.0.13 版本中,其提供的 `jfreechart-1.0.13-demo.src` 压缩包...

    jfreechart-1.0.1-demo.rar

    JFreeChart 是一个流行的开源Java库,用于创建各种图表,如饼图、柱状图、折线图、散点图以及时间序列图等。这个"jfreechart-1.0.1-demo.rar"文件是JFreeChart 1.0.1版本的演示程序,它包含了丰富的示例,帮助开发者...

    jfreechart-1.0.19-Demo-Source 源代码

    JFreeChart 是一个流行的 Java 图表库,它提供了丰富的图表类型,如饼图、柱状图、线图、散点图等,广泛用于数据可视化。源代码的分析对于理解其内部工作原理、自定义图表样式以及开发基于 JFreeChart 的应用程序至...

Global site tag (gtag.js) - Google Analytics