`
段海波
  • 浏览: 318383 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JfreeChart制作柱状图

阅读更多

还是我一贯的风格,先贴代码:

这个是web项目,需要在web.xml文件中配置JfreeChart相关信息,并且把jar包导入到WEB-INFO下的lib文件夹中。其中web.xml文件的配置信息如下:

	<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>/servlet/DisplayChart</url-pattern>
	</servlet-mapping>
 

BarChart.java

package com.dsh.jfreechart;

import java.awt.Font;
import java.io.IOException;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.title.LegendTitle;
import org.jfree.chart.title.TextTitle;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;

/**
 * 该类用于演示最简单的柱状图生成
 * 
 * @author: DuanLang
 * @company:oddTech
 * @time:2011-12-7 下午02:04:06
 */
public class BarChart {
	public static void main(String[] args) throws IOException {
		CategoryDataset dataset = getDataSet2();
		JFreeChart chart = ChartFactory.createBarChart3D("水果产量图", // 图表标题
				"水果", // 目录轴的显示标签
				"产量", // 数值轴的显示标签
				dataset, // 数据集
				PlotOrientation.VERTICAL, // 图表方向:水平、垂直
				true, // 是否显示图例(对于简单的柱状图必须是false)
				false, // 是否生成工具
				false // 是否生成URL链接
				);
		
		// 设置图显示标题
		chart.setTitle(new TextTitle("水果产量图", new Font("黑体", Font.BOLD, 16)));
		
		// 取得统一表的第一个图列
		LegendTitle legend = chart.getLegend(0);
		// 修改图例字体
		legend.setItemFont(new Font("宋体", Font.BOLD, 14));
		// 取得状图plot对象
		CategoryPlot plot = (CategoryPlot) chart.getPlot();
		// 设置柱状图各部分标签字体
		CategoryAxis domainAxis = plot.getDomainAxis();
		domainAxis.setLabelFont(new Font("隶书", Font.BOLD, 20));// X轴的标题文字字体
		domainAxis.setTickLabelFont(new Font("隶书", Font.BOLD, 20));// X轴坐标上数值字体
		ValueAxis rangeAxis = plot.getRangeAxis();
		rangeAxis.setLabelFont(new Font("隶书", Font.BOLD, 20));// y轴的标题文字字体
		rangeAxis.setTickLabelFont(new Font("隶书", Font.BOLD, 20));// y轴坐标上数值字体
		//domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45); // X轴上的Lable让其45度倾斜
		// 设置距离图片左端距离
		domainAxis.setLowerMargin(0.0);
		// 设置距离图片右端距离
		domainAxis.setUpperMargin(0.0);
		// 以下是显示
		ChartFrame frame = new ChartFrame("公司水果产量图 ", chart, true);
		frame.pack();
		frame.setVisible(true);
		
		/*
		 * FileOutputStream fos_jpg = null; try { fos_jpg = new
		 * FileOutputStream("D:\\fruit.jpg"); ChartUtilities
		 * .writeChartAsJPEG(fos_jpg, 100, chart, 400, 300, null); } finally {
		 * try { fos_jpg.close(); } catch (Exception e) { } }
		 */
	}

	/**
	 * 获取一个演示用的简单数据集对象
	 * 
	 * @return
	 */
	private static CategoryDataset getDataSet() {
		DefaultCategoryDataset dataset = new DefaultCategoryDataset();
		dataset.addValue(100, null, "苹果");
		dataset.addValue(200, null, "梨子");
		dataset.addValue(300, null, "葡萄");
		dataset.addValue(400, null, "香蕉");
		dataset.addValue(500, null, "荔枝");
		return dataset;
	}

	/**
	 * 获取一个演示用的组合数据集对象
	 * 
	 * @return
	 */
	private static CategoryDataset getDataSet2() {
		DefaultCategoryDataset dataset = new DefaultCategoryDataset();
		dataset.addValue(100, "北京", "苹果");
		dataset.addValue(100, "上海", "苹果");
		dataset.addValue(100, "广州", "苹果");
		dataset.addValue(200, "北京", "梨子");
		dataset.addValue(200, "上海", "梨子");
		dataset.addValue(200, "广州", "梨子");
		dataset.addValue(300, "北京", "葡萄");
		dataset.addValue(300, "上海", "葡萄");
		dataset.addValue(300, "广州", "葡萄");
		dataset.addValue(400, "北京", "香蕉");
		dataset.addValue(400, "上海", "香蕉");
		dataset.addValue(400, "广州", "香蕉");
		dataset.addValue(500, "北京", "荔枝");
		dataset.addValue(500, "上海", "荔枝");
		dataset.addValue(500, "广州", "荔枝");
		return dataset;
	}
}
 
分享到:
评论

相关推荐

    利用JFreeChart 实现柱状图,饼图,时序图,折线图等

    在Java编程环境中,JFreeChart库是一个非常强大的工具,它允许开发者轻松地创建各种图表,如柱状图、饼图、时序图和折线图等。这些图表在数据分析、报表展示以及各种可视化应用中非常常见。下面我们将详细介绍如何...

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

    JFreeChart 是一个开源的Java库,用于生成高质量的2D图表,如折线图、饼图、柱状图和堆栈柱状图等。它广泛应用于数据分析、报告和应用程序中,提供丰富的自定义选项来满足各种视觉需求。在本项目中,你将找到能够...

    java制作jfreechart柱状图 饼状图 折线图

    Java中的JFreeChart库是一个强大的工具,用于生成各种类型的图表,包括柱状图、饼状图和折线图。在本教程中,我们将深入探讨如何使用JFreeChart创建这些图表,以及如何用随机生成的数据作为数据源。 首先,...

    java使用JFreeChart制作柱形图

    Java 使用 JFreeChart 创建柱形图是一种常见的数据可视化方法,尤其在数据分析和Web应用程序中。JFreeChart 是一个强大的开源库,它提供了多种图表类型,包括柱形图、饼图、线图等,使得开发者能够方便地将数据转化...

    JFreeChart柱状图资料

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的图表,如柱状图、饼图、线图、散点图等,适用于各种数据分析和可视化需求。本资料主要聚焦于JFreeChart在创建柱状图方面的应用。 1. **JFreeChart...

    利用JFreeChart实现Java中饼状图、柱状图等图表并在Jsp中显示

    “利用JFreeChart实现Java中饼状图、柱状图等图表并在Jsp中显示”这个标题表明我们将探讨如何使用JFreeChart库来创建各种类型的图表,如饼状图和柱状图,并且这些图表能够在JavaServer Pages (JSP) 中展示。...

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

    四、制作柱状图 1. 创建数据源:使用CategoryDataset,比如DefaultCategoryDataset,添加数据列和行。 2. 创建图表:调用createBarChart方法,传入图表标题、类别轴标题、值轴标题和数据源。 3. 调整样式:可以设置...

    jfreechart柱状图、饼形图、折线图源码

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D图表,包括柱状图、饼形图和折线图。在这个压缩包文件中,包含的是基于JFreeChart库的源码示例,用于帮助理解和应用这些图表类型。下面我们将深入...

    Java程序中用JFreeChart制作图形报表

    【Java程序中用JFreeChart制作图形报表】 JFreeChart是一个强大的开源Java库,用于创建各种图表,如折线图、柱状图、饼图、散点图等。在Java程序中,我们可以利用JFreeChart来生成图形报表,以便更好地可视化和理解...

    jfreeChart生成的线状图,饼状图,柱状图

    JFreeChart是一款强大的Java图表库,它允许开发者在应用程序、Swing组件或Web应用中创建出各种复杂的图表,包括线状图、饼状图和柱状图。这些图表类型广泛应用于数据分析、报告制作以及可视化展示等领域。下面我们将...

    JFreeChar制作饼图和柱状图

    **制作柱状图的步骤:** 1. **导入必要的库:** 和饼图类似,我们需要导入相同的JFreeChart相关包。 2. **创建数据集:** 对于柱状图,我们可以使用`CategoryDataset`接口,如`DefaultCategoryDataset`。 ```...

    jfreechart各类曲线图JSP代码

    JFreeChart是一组功能强大、灵活易用的Java绘图API,使用它可以生成多种通用性的报表,包括柱状图、饼图、曲线图、甘特图等。它能够用在Swing和Web等中制作自定义的图表或报表,并且得到广泛的应用。本文将通过引领...

    JFreeChart制作图形报表

    《JFreeChart制作图形报表》 本文将详细介绍如何使用JFreeChart库创建图形报表,以满足特定的需求。首先,我们从需求分析开始。 在我们的示例中,需求源于一个有趣的场景:通过量化日常感情生活,为决策提供数据...

    jfreechart雷达图

    它支持多种图表类型,包括柱状图、饼图、线图、散点图、雷达图等。JFreeChart的灵活性和丰富的功能使其成为Java开发者的首选图表库之一。 2. **雷达图概述** 雷达图是一种多轴图表,用于展示多个变量之间的相对...

    jfreechart分布图制作开源包

    柱状图是数据可视化中常见的图表类型,JFreeChart 提供了多种类型的柱状图,如单列柱状图、多列柱状图和堆叠柱状图。通过柱状的高度,用户可以直观地比较不同类别的数据大小。开发者可以通过设置颜色、标签、图例等...

    利用jfreechart制作动态仪表盘

    JFreeChart是一个强大的Java图表库,它允许开发者创建多种类型的静态和动态图表,包括饼图、柱状图、线图、散点图以及我们这里关注的仪表盘。在这个例子中,我们将探讨如何利用JFreeChart来创建一个动态的仪表盘。 ...

    图表制作工具jfreechart

    柱状图是数据表示的经典方式,JFreeChart 提供了多种柱状图类型,如简单柱状图、堆叠柱状图和百分比堆叠柱状图等。开发者可以通过调整颜色、标签和数据值,自定义图表的外观和内容,以直观地显示不同类别之间的比较...

    使用JFreeChart制作各种美丽动人的统计图表

    JFreeChart是一款强大的Java库,用于创建高质量的统计图表,如条形图、线性图、饼图和柱状图等。它为开发者提供了一种简单的方法来展示复杂的数据,使其变得直观易懂。在本篇文章中,我们将深入探讨如何使用...

Global site tag (gtag.js) - Google Analytics