还是我一贯的风格,先贴代码:
这个是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;
}
}
分享到:
相关推荐
在Java编程环境中,JFreeChart库是一个非常强大的工具,它允许开发者轻松地创建各种图表,如柱状图、饼图、时序图和折线图等。这些图表在数据分析、报表展示以及各种可视化应用中非常常见。下面我们将详细介绍如何...
JFreeChart 是一个开源的Java库,用于生成高质量的2D图表,如折线图、饼图、柱状图和堆栈柱状图等。它广泛应用于数据分析、报告和应用程序中,提供丰富的自定义选项来满足各种视觉需求。在本项目中,你将找到能够...
Java中的JFreeChart库是一个强大的工具,用于生成各种类型的图表,包括柱状图、饼状图和折线图。在本教程中,我们将深入探讨如何使用JFreeChart创建这些图表,以及如何用随机生成的数据作为数据源。 首先,...
Java 使用 JFreeChart 创建柱形图是一种常见的数据可视化方法,尤其在数据分析和Web应用程序中。JFreeChart 是一个强大的开源库,它提供了多种图表类型,包括柱形图、饼图、线图等,使得开发者能够方便地将数据转化...
JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的图表,如柱状图、饼图、线图、散点图等,适用于各种数据分析和可视化需求。本资料主要聚焦于JFreeChart在创建柱状图方面的应用。 1. **JFreeChart...
“利用JFreeChart实现Java中饼状图、柱状图等图表并在Jsp中显示”这个标题表明我们将探讨如何使用JFreeChart库来创建各种类型的图表,如饼状图和柱状图,并且这些图表能够在JavaServer Pages (JSP) 中展示。...
四、制作柱状图 1. 创建数据源:使用CategoryDataset,比如DefaultCategoryDataset,添加数据列和行。 2. 创建图表:调用createBarChart方法,传入图表标题、类别轴标题、值轴标题和数据源。 3. 调整样式:可以设置...
JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D图表,包括柱状图、饼形图和折线图。在这个压缩包文件中,包含的是基于JFreeChart库的源码示例,用于帮助理解和应用这些图表类型。下面我们将深入...
【Java程序中用JFreeChart制作图形报表】 JFreeChart是一个强大的开源Java库,用于创建各种图表,如折线图、柱状图、饼图、散点图等。在Java程序中,我们可以利用JFreeChart来生成图形报表,以便更好地可视化和理解...
JFreeChart是一款强大的Java图表库,它允许开发者在应用程序、Swing组件或Web应用中创建出各种复杂的图表,包括线状图、饼状图和柱状图。这些图表类型广泛应用于数据分析、报告制作以及可视化展示等领域。下面我们将...
**制作柱状图的步骤:** 1. **导入必要的库:** 和饼图类似,我们需要导入相同的JFreeChart相关包。 2. **创建数据集:** 对于柱状图,我们可以使用`CategoryDataset`接口,如`DefaultCategoryDataset`。 ```...
JFreeChart是一组功能强大、灵活易用的Java绘图API,使用它可以生成多种通用性的报表,包括柱状图、饼图、曲线图、甘特图等。它能够用在Swing和Web等中制作自定义的图表或报表,并且得到广泛的应用。本文将通过引领...
《JFreeChart制作图形报表》 本文将详细介绍如何使用JFreeChart库创建图形报表,以满足特定的需求。首先,我们从需求分析开始。 在我们的示例中,需求源于一个有趣的场景:通过量化日常感情生活,为决策提供数据...
它支持多种图表类型,包括柱状图、饼图、线图、散点图、雷达图等。JFreeChart的灵活性和丰富的功能使其成为Java开发者的首选图表库之一。 2. **雷达图概述** 雷达图是一种多轴图表,用于展示多个变量之间的相对...
柱状图是数据可视化中常见的图表类型,JFreeChart 提供了多种类型的柱状图,如单列柱状图、多列柱状图和堆叠柱状图。通过柱状的高度,用户可以直观地比较不同类别的数据大小。开发者可以通过设置颜色、标签、图例等...
JFreeChart是一个强大的Java图表库,它允许开发者创建多种类型的静态和动态图表,包括饼图、柱状图、线图、散点图以及我们这里关注的仪表盘。在这个例子中,我们将探讨如何利用JFreeChart来创建一个动态的仪表盘。 ...
柱状图是数据表示的经典方式,JFreeChart 提供了多种柱状图类型,如简单柱状图、堆叠柱状图和百分比堆叠柱状图等。开发者可以通过调整颜色、标签和数据值,自定义图表的外观和内容,以直观地显示不同类别之间的比较...
JFreeChart是一款强大的Java库,用于创建高质量的统计图表,如条形图、线性图、饼图和柱状图等。它为开发者提供了一种简单的方法来展示复杂的数据,使其变得直观易懂。在本篇文章中,我们将深入探讨如何使用...