package org.hibernate.test;
import java.io.FileOutputStream;
import java.io.IOException;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.data.general.DefaultPieDataset;
/**
* 该类用于演示最简单的柱状图生成
* @author Winter Lau
*/
public class JfreeChartTest {
public static void main(String[] args) throws IOException{
/**********************************柱状图*****************************/
/*
CategoryDataset dataset = getDataSet();//数据集合方法getDataSet2()
JFreeChart chart = ChartFactory.createBarChart3D(
"水果产量图", // 图表标题
"水果", // 目录轴的显示标签
"产量", // 数值轴的显示标签
dataset, // 数据集
PlotOrientation.VERTICAL, // 图表方向:水平、垂直
true, // 是否显示图例(对于简单的柱状图必须是false)
false, // 是否生成工具
false // 是否生成URL链接
);
/****************************柱状图修饰背景与字体(可有可无)**************************************/
/*
chart.setBackgroundPaint(Color.white);
CategoryPlot plot = chart.getCategoryPlot();
CategoryAxis domainAxis = plot.getDomainAxis();
// domainAxis.setVerticalCategoryLabels( false );
plot.setDomainAxis(domainAxis);
BarRenderer3D renderer = new BarRenderer3D();
renderer.setBaseOutlinePaint(Color.BLACK);
// 设置每个地区所包含的平行柱的之间距离
renderer.setItemMargin( 0.1 );
// 显示每个柱的数值,并修改该数值的字体属性
renderer.setItemLabelGenerator( new StandardCategoryItemLabelGenerator());
renderer.setItemLabelsVisible( true );
plot.setRenderer(renderer);
// 设置柱的透明度
plot.setForegroundAlpha( 0.8f);
/************************************柱状图修饰背景与字体(可有可无)*****************************************/
/**********************************柱状图*****************************/
/**********************************饼图*****************************/
DefaultPieDataset data = getDataSet3();//数据集合方法
JFreeChart chart = ChartFactory.createPieChart("水果产量图",// 图表标题
data, // 数据集
true, // 是否显示图例(对于简单的柱状图必须是false)
false, // 是否生成工具
false); // 是否生成URL链接
/**********************************饼图*****************************/
FileOutputStream fos_jpg = null;
try {
fos_jpg = new FileOutputStream("F:/fruit.jpg");
ChartUtilities.writeChartAsJPEG(fos_jpg,chart,500,400);
} finally {
try {
fos_jpg.close();
} catch (Exception e) {}
}
}
/**
* 获取一个演示用的简单数据集对象 柱状图
* @return
*/
private static CategoryDataset getDataSet() {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(100, "苹果", "苹果");
dataset.addValue(200, "梨子", "梨子");
dataset.addValue(300,"葡萄", "葡萄");
dataset.addValue(400, "香蕉", "香蕉");
dataset.addValue(500, "荔枝", "荔枝");
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;
}
/**
* 获取一个演示用的简单数据集对象 饼图
* @return
*/
private static DefaultPieDataset getDataSet3() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("苹果",100);
dataset.setValue("梨子",200);
dataset.setValue("葡萄",300);
dataset.setValue("香蕉",400);
dataset.setValue("荔枝",500);
return dataset;
}
}
分享到:
相关推荐
**JFreeChart 实例详解** JFreeChart 是一个强大的开源Java图表库,它提供了一种简单的方法来创建高质量的图表,包括线图、柱状图、饼图、散点图等,广泛应用于Java应用程序和Web应用中。在这个实例中,我们将深入...
**JFreeChart 实例详解** JFreeChart 是一个强大的开源Java库,用于生成高质量的图表。这个库广泛应用于各种项目,包括数据可视化、报表生成、应用程序界面和网页设计。在本篇文章中,我们将深入探讨JFreeChart的...
在本实例中,"jFreeChart实例(带数据库和文档)" 提供了一个实际的项目案例,展示了如何将jFreeChart与数据库结合使用,并且包含相关的文档以帮助理解。这对于我们学习和掌握jFreeChart的使用方法非常有价值。 ...
**JFreeChart 实例教程与应用详解** JFreeChart 是一个功能强大的 Java 图表库,它为开发者提供了创建各种高质量图表的能力,包括折线图、柱状图、饼图、散点图、甘特图等。这个教程将帮助你深入理解和使用 ...
jfreechart实例 jfreechart源码
**JFreeChart 实例:深入理解曲线图** JFreeChart 是一个开源的 Java 图形库,它为开发者提供了丰富的图表绘制功能,包括柱状图、饼图、散点图、曲线图等多种图表类型。对于初学者来说,掌握 JFreeChart 的使用能够...
2. **创建 JFreeChart 实例**:然后使用 `ChartFactory` 创建 `JFreeChart` 实例,传入图表类型、标题、X轴标签、Y轴标签以及数据集。 3. **自定义属性**:根据需求,你可以调整图表的各种属性,如背景色、坐标轴...
**JFreeChart 实例:Java 生成分布图** JFreeChart 是一个强大的开源 Java 图形库,用于生成高质量的图表,包括饼图、柱状图、线图、散点图、甘特图等多种类型,广泛应用于数据分析和可视化场景。本实例主要介绍...
《jFreeChart实例解析与应用》 在Java编程世界中,数据可视化是一个至关重要的环节,它能够帮助我们更好地理解和分析数据。jFreeChart作为一个强大的开源图表库,为Java开发者提供了丰富的图表类型和高度自定义的...
**JFreeChart 实例详解** JFreeChart 是一个流行的开源Java库,用于生成高质量的图表。这个库提供了各种图表类型,如柱状图、饼图、线形图、散点图、甘特图等,广泛应用于数据分析、报表生成以及Web应用中。在本...
这个"jfreechart实例demo"压缩包很可能是包含了一些示例代码,帮助开发者更好地理解和应用JFreeChart库。 在深入JFreeChart之前,我们先来了解一下什么是图表。图表是一种视觉表示数据的方式,它能够清晰地展示数据...
**jFreeChart实例教程** **一、jFreeChart简介** jFreeChart是一个强大的开源Java库,专门用于生成高质量的图表。它支持多种图表类型,包括柱状图、饼图、线形图、散点图、面积图、甘特图、热力图以及3D图表等。...
这个实例代码详细注释的压缩包文件提供了学习和理解JFreeChart使用的宝贵资源。以下是对JFreeChart及其相关知识点的详细讲解: 1. **JFreeChart简介**:JFreeChart是一个开源项目,它为Java开发者提供了一套完整的...