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

使用JFreeChart创建3D折线图

阅读更多
package com.cs.jfreechart;

import java.awt.Color;
import java.awt.Font;
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.chart.axis.CategoryAxis;
import org.jfree.chart.axis.NumberAxis;
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;

public class Line3DChartDemo {

	/**
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) throws IOException {
		//生成3D折线图(柱状图只改方法名createLineChart3D就可以了)
		JFreeChart chart = ChartFactory.createLineChart3D (
				"图书销售统计表",     //图表标题
				"图书",             //目录轴的显示标签
				"销量",             //数值轴的显示标签
				getDateSet(),      //数据
				//PlotOrientation.HORIZONTAL, //图表方向水平
				PlotOrientation.VERTICAL,    //图表方向垂直
				true,             //是否显示图例
				false,            //是否显示工具提示
				false             //是否生成URL
		);
		//设置标题及标题字体
		chart.setTitle(new TextTitle("图书销售统计图",new Font("黑体",Font.ITALIC,22)));
		//建一个图例
		LegendTitle legendTitle = chart.getLegend(0);
		//设置图例字体
		legendTitle.setItemFont(new Font("宋体",Font.BOLD,14));
		//获取折线图plot对象
		CategoryPlot plot = (CategoryPlot) chart.getPlot();
		//设置折线的颜色
		plot.getRenderer().setSeriesPaint(0, Color.BLUE);
		plot.getRenderer().setSeriesPaint(1, Color.GREEN);
		plot.getRenderer().setSeriesPaint(2, Color.ORANGE);
		//取得横轴
		CategoryAxis categoryAxis = plot.getDomainAxis();
		//设置横轴的字体
		categoryAxis.setLabelFont(new Font("宋体",Font.BOLD,22));
		//设置分类标签以45度倾斜
		//categoryAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45);
		//设置分类标签字体
		categoryAxis.setTickLabelFont(new Font("宋体",Font.BOLD,22));
		//取得纵轴
		NumberAxis numberAxis = (NumberAxis) plot.getRangeAxis();
		//设置纵轴的字体
		numberAxis.setLabelFont(new Font("宋体",Font.BOLD,22));
		//设置背景透明度(0~1)
		plot.setBackgroundAlpha(0.9f);
		//设置前景色透明度(0~1)
		plot.setForegroundAlpha(0.5f);
		//输出文件
		FileOutputStream fos = new FileOutputStream("book.jpg");
		//用ChartUtilities工具输出
		ChartUtilities.writeChartAsJPEG(fos, chart, 800, 600);
		fos.close();
	}
	
	private static CategoryDataset getDateSet() {
		//提供生成折线图的数据
		DefaultCategoryDataset dataset = new DefaultCategoryDataset();
		//dataset.addValue(47,"","JAVA教程");
		//dataset.addValue(23,"","c++教程");
		//dataset.addValue(20,"","C#教程");
		//dataset.addValue(10,"","VC++教程");
		
		//生成复杂带图例的柱状图
		dataset.addValue(47,"北京","JAVA教程");
		dataset.addValue(23,"北京","c++教程");
		dataset.addValue(20,"北京","C#教程");
		dataset.addValue(10,"北京","VC++教程");
		dataset.addValue(40,"天津","JAVA教程");
		dataset.addValue(20,"天津","c++教程");
		dataset.addValue(35,"天津","C#教程");
		dataset.addValue(5,"天津","VC++教程");
		dataset.addValue(30,"上海","JAVA教程");
		dataset.addValue(28,"上海","c++教程");
		dataset.addValue(22,"上海","C#教程");
		dataset.addValue(20,"上海","VC++教程");
		return dataset;
	}

}

分享到:
评论

相关推荐

    jfreechart绘制折线图(平面和3D)

    无论是平面还是3D折线图,其核心都是创建合适的Dataset、Plot和JFreeChart实例,然后根据需求进行细节调整。通过深入学习和实践,开发者可以利用JFreeChart轻松地在Java应用程序中生成美观且信息丰富的图表。

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

    使用 jfreechart 生成折线图需要以下步骤: 1. 创建 CategoryDataset 对象,用于存储数据。 2. 创建 LineAndShapeRenderer 对象,用于设置折线图的样式。 3. 创建 CategoryAxis 对象,用于设置 x 轴和 y 轴的样式。...

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

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

    java绘制图表(柱状图、饼图、折线图)包 jfreechart

    在JFreeChart中,你可以使用`TimeSeriesCollection`来存储时间序列数据,然后通过`createXYLineChart()`方法生成折线图。此外,JFreeChart还支持日期和时间轴,让时间相关的数据可视化更加精确。 除了这些基本图表...

    java利用jfreechart绘制excel.pdf

    描述:使用 JFreeChart 库生成 Excel 图表,包括柱状图、饼状图、折线图等多种类型的图表。 标签:JFreeChart、Java、Excel、图表 部分内容: ### 需要的 Jar 包 在使用 JFreeChart 库之前,需要将 jfreechart-...

    JfreeChart 3D 绘图

    JFreeChart是开源的Java类库,它提供了丰富的图表类型,如折线图、柱状图、饼图、散点图、甘特图等。它不仅支持静态图表,还能够动态更新数据,使得图表具有交互性。JFreeChart库的灵活性和易用性使其成为Java开发者...

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

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

    java利用JFreeChart实现各类数据统计图柱形图饼图折线图.pdf

    Java 中可以使用 JFreeChart 库来实现各种数据统计图,如柱形图、饼图、折线图等。下面将详细介绍如何使用 JFreeChart 库实现数据统计图。 首先,需要添加三个第三方包到 Java 项目中,分别是 jfreechart-1.0.13....

    利用jFreeChart做曲线图、饼状图、柱状图

    饼状图和折线图的创建方法与柱状图类似,只需要使用不同的工厂方法和设置不同的属性。例如,饼状图可以使用ChartFactory.createPieChart方法,折线图可以使用ChartFactory.createLineChart方法。 jFreeChart的使用 ...

    使用java实现各种数据统计图(柱形图,饼图,折线图)

    JFreeChart是一个强大的Java库,它可以用来创建多种类型的图表,包括柱形图、饼图和折线图。本篇文章将详细介绍如何使用JFreeChart来实现这些统计图形。 首先,为了使用JFreeChart库,我们需要导入以下三个依赖库:...

    JFreeChart实例

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的二维图表,如柱状图、饼状图、折线图等,并且支持2D和3D效果。在Struts 2框架中集成JFreeChart,可以方便地在Web应用中展示数据可视化结果,提升用户...

    柱状图 折线图 饼状图

    根据提供的文件信息,本文...通过以上示例代码可以看出,无论是饼状图、柱状图还是折线图,都可以通过使用JFreeChart库来轻松实现。此外,还可以对图表进行更细致的自定义设置,如颜色、字体等,以满足不同的需求场景。

    JFreeChart技术文档

    * 折线图:折线图可以使用直方条形图。 * 区域图:JFreeChart 可以创建区域图,使用符合 CategoryDataset 接口标准的数据创建区域图。 * 分布图:JFreeChart 可以创建分布图,使用符合 XYDataset 接口标准的数据创建...

    java实现各种数据统计图(柱形图,饼图,折线图).zip

    使用JFreeChart创建饼图的基本步骤如下: 1. 创建`PieDataset`:存储每一块的数据,可以使用`DefaultPieDataset`或自定义实现。 2. 创建`JFreeChart`对象:调用`JFreeChart.createPieChart()`方法,传入图表标题和`...

    JfreeChart柱状图饼图

    JFreeChart库是开源的Java图形库,提供了一套完整的API,支持生成各种复杂图表,如折线图、柱状图、饼图、散点图、甘特图等。它的设计目标是易于使用、可扩展且功能强大,使得开发者无需深入了解图形渲染机制,就能...

    jfreechat 饼图,柱状,折线图示例代码

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D和3D图表,包括饼图、柱状图和折线图等。在Java应用中,这些图表常用于数据可视化,帮助用户直观理解复杂的数据信息。下面我们将详细介绍如何使用...

    JFreeChart 使用

    JFreeChart 是一个用于Java平台的开源图表库,它提供了丰富的图表类型,包括柱状图、折线图、饼图、散点图等,广泛应用于数据可视化和报告生成。在本篇文章中,我们将深入探讨如何使用JFreeChart来创建饼状图,帮助...

    使用JFreeChart小结(一)

    例如,创建一个简单的折线图: ```java import org.jfree.chart.ChartFactory; import org.jfree.chart.JFreeChart; import org.jfree.data.category.DefaultCategoryDataset; // 创建数据集 ...

    JFreeChart报表

    折线图常用于展示数据随时间变化的趋势,JFreeChart提供了创建折线图的功能,包括简单的时间序列图和复杂的多系列折线图。用户可以自定义线的颜色、宽度,甚至可以添加点标记来突出特定数据点。此外,折线图还可以...

    JFreeChart生成报表Demo案例

    本示例是关于如何使用JFreeChart在Java环境中创建3D效果的报表的实践教程。 首先,JFreeChart库提供了丰富的图表类型,包括但不限于: 1. **饼图(Pie Chart)**:饼图通过扇形区域的大小来表示数据的比例关系,3D...

Global site tag (gtag.js) - Google Analytics