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

jfreecharts 报表

阅读更多
我们以折线图为例子

第一步,构建数据集

/**
	 * 获取数据集
	 * @return
	 */
	private CategoryDataset getDataset() {
		DefaultCategoryDataset dataset = new DefaultCategoryDataset();

		dataset.addValue(2.8, "冰箱", "1月");
		dataset.addValue(4.2, "冰箱", "2月");
		dataset.addValue(3.9, "冰箱", "3月");
		dataset.addValue(3.8, "冰箱", "4月");
		dataset.addValue(4.2, "冰箱", "5月");
		dataset.addValue(3.9, "冰箱", "6月");
		dataset.addValue(1.7, "冰箱", "7月");
		dataset.addValue(4.2, "冰箱", "8月");
		dataset.addValue(3.9, "冰箱", "9月");
		dataset.addValue(2.5, "冰箱", "10月");
		dataset.addValue(4.2, "冰箱", "11月");
		dataset.addValue(3.9, "冰箱", "12月");

		dataset.addValue(1.2, "彩电", "1月");
		dataset.addValue(3.2, "彩电", "2月");
		dataset.addValue(4.9, "彩电", "3月");
		dataset.addValue(2.5, "彩电", "4月");
		dataset.addValue(3.2, "彩电", "5月");
		dataset.addValue(1.9, "彩电", "6月");
		dataset.addValue(2.7, "彩电", "7月");
		dataset.addValue(3.2, "彩电", "8月");
		dataset.addValue(3.9, "彩电", "9月");
		dataset.addValue(3.0, "彩电", "10月");
		dataset.addValue(1.2, "彩电", "11月");
		dataset.addValue(1.9, "彩电", "12月");

		return dataset;

	}



第二步,根据数据集构建折线图

private JFreeChart createChart() {
		CategoryDataset dataset = getDataset();
		//标题,x轴,y轴,数据集,图标方向,是否显示图例,是否生成工具,是否生成url
		JFreeChart line = ChartFactory.createLineChart("折线图", "时间", "销售额(百万)", dataset, PlotOrientation.VERTICAL, true,
				true, false);

		line.setBackgroundPaint(new Color(200, 200, 255));
		//设置标题文字
		line.getTitle().setFont(new Font("黑体", Font.BOLD, 18));
		//设置底部图例字体
		line.getLegend().setItemFont(new Font("黑体", Font.BOLD, 12));

		CategoryPlot plot = line.getCategoryPlot();

		//网格线的颜色,就是与x轴平行的一条一条的虚线
		plot.setRangeGridlinePaint(new Color(70, 70, 170));

		//设置图区的背景色
		//plot.setBackgroundPaint(new Color(255, 255, 255));

		LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();

		//设置第一个根线为蓝色加粗
		renderer.setSeriesStroke(0, new BasicStroke(2.0f));
		renderer.setSeriesPaint(0, new Color(0, 0, 255));

		//设置第2根线为红色加粗
		renderer.setSeriesStroke(1, new BasicStroke(2.0f));
		renderer.setSeriesPaint(1, new Color(255, 0, 0));

		//设置数据点可见
		renderer.setBaseShapesVisible(true);

		//显示数据点的值可见
		renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
		renderer.setBaseItemLabelsVisible(true);

		//获取x轴
		CategoryAxis axis = plot.getDomainAxis();
		//获取y轴
		ValueAxis numberAxis = plot.getRangeAxis();
		
		axis.setLabelFont(new Font("黑体", Font.BOLD, 12));
		axis.setTickLabelFont(new Font("黑体", Font.BOLD, 12));
		
		numberAxis.setTickLabelFont(new Font("黑体", Font.BOLD, 12));
		numberAxis.setLabelFont(new Font("黑体", Font.BOLD, 12));

		return line;
	}






第3步,输出图片

//生成图片
	private void createPng() {
		JFreeChart jfreechart = createChart();
		OutputStream os;
		try {
			os = new FileOutputStream("d:/line.png");
			ChartUtilities.writeChartAsPNG(os, jfreechart, 800, 400);
			os.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}




注:附件是代码和支持jar包,包括,折线图,饼图,柱状图的例子
  • 大小: 26.3 KB
分享到:
评论
1 楼 woshiaoyun 2013-04-28  
非常感谢你的无私分享!

相关推荐

    JFreeCharts code

    通过JFreeChart插件,既可以生成普通效果的折线图,也可以生成3D效果的折线图。如果想生成普通效果的折线图,需要通过工厂类ChartFactory的createLineChart()方法获得JFreeChart类的实例;如果想生成3D效果的折线图...

    Java报表数据可视化视频讲解

    视频详细讲解,需要的小伙伴自行网盘下载,链接见附件,永久有效。 1、课程简介 报表[forms for reporting to the higher organizations],就是向上级报告情况的表格。...l JfreeCharts l HighCharts l ECharts

    JfreeCharts中文API

    JFreeChart 是一个强大的 Java 图表库,它允许开发者创建各种复杂的图表,包括饼图、柱状图、散点图、时序图、甘特图等。这个库广泛应用于 Java 应用程序、Applets、Servlets 和 JSP 等环境中,提供了丰富的功能和...

    jfreecharts在网上下载的 包括jar包

    jfreecharts资料在网上下载的 包括jar包

    JFreeChart中文API,非常实用的API

    JFreeChart中文API详解 JFreeChart是一个功能强大且实用的图表生成库,提供了丰富的API来满足各种图表需求。本文将详细介绍JFreeChart中文API,涵盖了JFreeChart类、TextTitle类、StandardLegend类和Axis类等几个...

    JfreeChart 应用详解 例子

    在 Java 开发中,JFreeChart 是报表和数据分析领域的一个常用工具。通过 JFreeChart,你可以创建高质量的图表,并将其嵌入到桌面应用、Web 应用或者 PDF 文档中。本文将详细介绍如何使用 JFreeChart 创建各种类型的...

    mendix-JFreeCharts:该软件包允许您通过生成各种图表来可视化应用程序中的数据。 它还使您能够查看pdf格式的图表以及数据

    mendix-JFreeCharts 该软件包允许您通过生成各种图表来可视化应用程序中的数据。 它还使您能够查看pdf格式的图表以及数据。 #可用图表#多系列条形图折线图 #单系列环形图(饼形图的改编) #Contributing有关...

    jfreechart jar包

    jfreechart-1.0.12-expermental.jar jar包

    jfreechart绘制的立体柱状图(正负纵坐标)

    利用jfreechart绘制的立体柱状图,可以实现正负纵坐标显示,需要提前下载jfreechart.jar文件,否则我的类会报错,也即是要配置运行环境

    JFreeChart中文API

    ### JFreeChart中文API知识点详解 #### 一、概述 JFreeChart是一款强大的Java图表库,可以用于创建高质量的图表并将其嵌入到各种应用程序中。对于非英语环境下的开发者而言,一个中文版的API文档将极大地提升工作...

    jfreechart生成图片及导出pdf 、excel

    JFreeChart是一款强大的Java图表库,它允许开发者在应用程序、Swing组件或Web应用中创建各种图表,如柱状图、饼图、折线图等。这个库支持丰富的定制选项,使得图表可以按照用户需求进行个性化设计。...

    jfreechart api

    jfreecharts api 文当是英文化的一个api开发帮助文档,里面有帮助来实现各种图形的操作接口说明;

    JFreeApplet-开源

    JFreeApplet是JFreeCharts的包装,允许用户通过Java小程序显示JFreeCharts生成的图表。 尽管依赖于此项目,但该项目是独立于JFreeChart开发的。

    两个版本的Jfreechart Jar包

    1. **图表类型丰富**:支持折线图、柱状图、饼图、散点图、甘特图、面积图、热力图等多种图表类型,适用于数据分析、报表生成和可视化展示。 2. **自定义性强**:允许开发者自定义图表的颜色、样式、字体、标记、...

    JFreeChart简单实现光滑曲线绘制

    JFreeChart简单实现光滑曲线绘制 JFreeChart是一个流行的开源图表库,用于生成各种类型的图表,包括折线图、柱状图、饼图等。下面我们将介绍如何使用JFreeChart简单实现光滑曲线绘制。 光滑曲线绘制 ...

    Jfreechart不同的JAR包(网上下的)

    这个库在许多应用程序中被广泛使用,特别是那些需要数据可视化功能的软件,例如数据分析工具、报表系统或者GUI应用。JFreeChart 的灵活性使得它能够自定义图表的各个细节,如颜色、样式、标签等,以满足用户特定的...

    简单的jsp fusioncharts例子

    相较于JFreeCharts,FusionCharts提供了更为丰富的图表类型和更出色的用户体验。 首先,我们需要了解FusionCharts的基本概念。FusionCharts是一款基于SVG(Scalable Vector Graphics)的交互式图表库,支持超过90种...

    ReusableSnippets:可重用的Java实现和我作为个人计划开发的几个项目

    CalClock一个基于摆动的时钟小部件,具有JCalendar和JFreeCharts集成。 PSA:一个项目,假设是否可以将编程逻辑转换为可视化映射,以弥合业务与开发人员理解之间的差距。 SuperBugKiller:一款名为“ Parasite ...

    WhosBetter:一个使用Java Riot API的统计程序

    它利用了rithms的riot-api-java项目,可以在这里找到: : 我还使用jfreecharts创建视觉效果。 可以在这里找到源代码和文档: : rithms的文档可以在这里找到: : 可以在以下位置找到Riot API的文档: :

Global site tag (gtag.js) - Google Analytics