`

小试JFreeChart柱状图和饼状图

    博客分类:
  • java
 
阅读更多

 

 闲来无事,就学学报表技术,目前找到一款开源JFreeChart,遂写下最常用的柱状图与饼状图以作记录。

 

导入jar包:

 

1、jfreechart-1.0.14.jar

2、jcommon-1.0.17.jar

 

其他不解释 直接看代码

 

package jfreechart;

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

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.ChartUtilities;
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.PiePlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.data.general.DefaultPieDataset;

public class TestJfreeChart {

	public static void main(String[] args) throws Exception {
		//显示柱状图
		showBarChart();
		
		//显示饼状图
		showPieChart();
	}

	private static void showBarChart() throws IOException,
			FileNotFoundException {
		CategoryDataset dataset = getDataSet2();
		
		JFreeChart barChart = ChartFactory.createBarChart3D("柱状图", "分组", "人数",  
				dataset,PlotOrientation.VERTICAL, true, true, true);
		
		CategoryPlot  plot = (CategoryPlot) barChart.getPlot();
		CategoryAxis domainAxis = plot.getDomainAxis();
		ValueAxis rangeAxis = plot.getRangeAxis();
		
		Font font = new Font("微软雅黑", Font.BOLD, 12);
		
		barChart.getTitle().setFont(font );
		barChart.getLegend().setItemFont(font);
		
		domainAxis.setLabelFont(font);
		domainAxis.setTickLabelFont(font);
		rangeAxis.setLabelFont(font);
		rangeAxis.setTickLabelFont(font);
		
		ChartUtilities.writeChartAsJPEG(new FileOutputStream("C:/bar.jpg"),
				barChart, 1000, 700);
		
		ChartFrame frame = new ChartFrame("柱状图", barChart);
		
		frame.pack();
		frame.setVisible(true);
	}

	private static CategoryDataset getDataSet2() {
		DefaultCategoryDataset dataset = new DefaultCategoryDataset();

		dataset.addValue(78, "", "C++组");
		dataset.addValue(120, "", "JAVA组");
		dataset.addValue(65, "", "JS组");
		dataset.addValue(20, "", "数据库组");
		dataset.addValue(5, "", "需求组");

		return dataset;
	}

	private static void showPieChart() throws Exception {
		DefaultPieDataset dataset = getDataSet();
		
		JFreeChart pieChart = ChartFactory.createPieChart("人员分布图", dataset, true, true, true);

		PiePlot plot = (PiePlot) pieChart.getPlot();
		
		Font font = new Font("微软雅黑", Font.BOLD, 12);
		plot.setLabelFont(font);
		pieChart.getLegend().setItemFont(font);
		pieChart.getTitle().setFont(font);
		
		ChartUtilities.writeChartAsJPEG(new FileOutputStream("C:/pie.jpg"), 
				pieChart, 1000, 700);
		
		ChartFrame frame =  new ChartFrame("测试", pieChart);
		
		frame.pack();
		
		frame.setVisible(true);
	}

	private static DefaultPieDataset getDataSet() {
		DefaultPieDataset dataset = new DefaultPieDataset();
		
		dataset.setValue("C++组", 78);
		dataset.setValue("JAVA组", 120);
		dataset.setValue("JS组", 65);
		dataset.setValue("数据库组", 20);
		dataset.setValue("需求组", 5);
		return dataset;
	}
}

 

 

生成的效果图:

 

 

算了,不展示图片了。真心受不了iteye的上传附件速度,简直是坑爹………………

  • 大小: 102.4 KB
  • 大小: 53 KB
分享到:
评论

相关推荐

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

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

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

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

    JFreeChart编写柱状图和饼状图及3D饼状图方法

    JFreeChart是一款强大的Java库,用于创建各种图表,包括柱状图、饼状图和3D饼状图等。在Java编程中,JFreeChart是一个非常实用的工具,它允许开发者轻松地在应用程序中集成数据可视化功能。下面将详细介绍如何使用...

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

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

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

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

    jfreechart(柱状图,饼状图...)教程.zip

    下面我们将深入探讨JFreeChart的基本使用、柱状图和饼状图的创建方法,以及如何结合源码进行学习。 首先,JFreeChart库提供了丰富的图表类型,包括柱状图(BarChart)、饼状图(PieChart)、线形图(LineChart)、...

    自定义JFreeChart柱状图的详细说明

    综上所述,自定义JFreeChart柱状图涉及了数据准备、渲染器配置、外观调整、标签和提示信息等多个方面。通过深入理解这些知识点,开发者可以创建出满足各种需求的个性化柱状图。提供的文件如"JFreeChart中柱状图的...

    JFreeChart生成3D饼状图及柱状图

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D和3D图表,包括折线图、柱状图、饼状图、散点图等,并且支持自定义样式和颜色,使得数据可视化变得更加直观和生动。在这个特定的场景中,我们将关注...

    jfreechart 绘制横向立体柱状图

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

    jfreechart 折线图、饼状图、柱状图

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的图表,包括折线图、饼状图和柱状图等,这些图表广泛应用于数据分析、报表展示以及Web应用程序中。本项目提供了一个实例,展示了如何在Web页面上使用...

    jfreechart实现柱状图排序

    根据提供的信息,我们可以总结出以下关于...综上所述,虽然 JFreeChart 可能没有直接提供柱状图排序的功能,但通过自定义数据处理和图表创建过程,完全可以实现这一需求。这种灵活性也是 JFreeChart 的一大优势所在。

    使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP

    JFreeChart是一个强大的Java库,它允许开发者创建各种类型的图表,包括曲线图、柱状图、饼状图和分布图等。在当前JS图表库盛行的时代,JFreeChart依然因其稳定性和丰富的定制性而在Java领域占有一席之地。本文将详细...

    JfreeChart柱状图饼图

    这篇博文中,我们将深入探讨如何使用JFreeChart来创建柱状图和饼图,并理解其背后的源码机制。 ### 一、JFreeChart库介绍 JFreeChart库是开源的Java图形库,提供了一套完整的API,支持生成各种复杂图表,如折线图...

    java+jfreechart+struts 生成柱状图

    java+jfreechart+struts 生成柱状图 java jfreechart 柱状图 java jfreechart 柱状图 谁需要完整项目可以去http://download.csdn.net/source/2665347

    JFreeChart动态加载柱状图

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

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

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

    JFreeChart 实现无乱码的柱状图和饼状图实例

    下面我们将详细探讨如何使用 JFreeChart 实现无乱码的柱状图和饼状图,并在 JSP 页面中正确显示。 首先,要解决中文乱码问题,我们需要确保所有环节的编码设置正确。这包括项目的源代码编码、JSP 页面编码以及 ...

    JFreeChar图表生成柱状图和饼状图源码

    1. 示例源代码:展示如何使用JFreeChart API创建柱状图和饼状图。 2. 示例数据:可能包含用于生成图表的数据集。 3. 类库:JFreeChart的核心库文件,用于编译和运行示例代码。 4. 文档:可能包含关于JFreeChart使用...

    report图状报表(柱状图,饼状图,折线图)

    在数据分析和可视化领域,柱状图、饼状图和折线图是三种常见的图表类型,它们在Java编程环境中被广泛用于表示和理解复杂数据。这些图表可以帮助我们直观地比较不同类别的数量,显示趋势,或者展示各部分占整体的比例...

Global site tag (gtag.js) - Google Analytics