`

JFreeChart介绍及经典入门资料

    博客分类:
  • JAVA
阅读更多

//=====================================================================
//Title:JFreeChart入门指南
//Author:谢莫锋 Email:yyxmf111@sogou.com  QQ:35814522
//=====================================================================
一、JFreeChart获取。
        JFreeChart是JFreeChart公司在开源网站SourceForge.net上的一个项目,该公司的主要产品有如下:
        1、JFreeReport:报表解决工具
        2、JFreeChart:Java图形解决方案(Application/Applet/Servlet/Jsp)
        3、JCommon:JFreeReport和JFreeChart的公共类库
        4、JFreeDesigner:JFreeReport的报表设计工具

    我们可以从jfree官方网站上获取最新版本和相关资料(但是jfree的document需要40美金才能获取),
    获取地址:http://www.jfree.org/jfreechart/index.html(同时可以获得简明介绍)
    我们以当前最新版本:jfreechart_0.9.21.zip为例子进行说明。

二、JFreeChart配置安装
    1、解压jfreechart_0.9.21.zip到指定位置,其中source是jfreechart的源码,jfreechart-0.9.21-demo.jar
       是例子程序(该部分留给大家自己去研究)
    2、为了配置成功,我们需要关注的文件有如下三个:jfreechart-0.9.21.jar、lib\jcommon-0.9.6.jar、
       lib\gnujaxp.jar
    3、如果是Application开发,把上述三个文件拷贝到%JAVA_HOME%\LIB中,同时在环境变量CLASSPATH中加入
       如果是WEB开发,以TOMCAT中的一个WEB项目TEST为例子说明:
       把上述三个文件拷贝到TEST\WEB-INF\LIB中,然后修改TEST\WEB-INF\web.xml文件,在其中加入如下代码:
                
                    DisplayChart
                    org.jfree.chart.servlet.DisplayChart
                
                
                    DisplayChart
                    /servlet/DisplayChart
                
               至此jfreechart的配置就完成了,下面就可以进行jfreechart的开发了。这里值得提出的是jfreechart的类
       结构设计前后兼容性不是很好,不同版本的jfreechart中类库结构可能不一样,有时候可能需要查源码。如果
       是中文显示的时候可能依据观感需要改变源码的字体,不过我个人觉得这个版本比以前版本要好一些。

三、JFreeChart功能介绍
    JFreeChart目前是最好的java图形解决方案,基本能够解决目前的图形方面的需求,主要包括如下几个方面:
    pie charts (2D and 3D):饼图(平面和立体)
    bar charts (regular and stacked, with an optional 3D effect):柱状图
    line and area charts:曲线图
    scatter plots and bubble charts
    time series, high/low/open/close charts and candle stick charts:时序图
    combination charts:复合图
    Pareto charts
    Gantt charts:甘特图
    wind plots, meter charts and symbol charts
    wafer map charts
    (态图表,饼图(二维和三维) , 柱状图 (水平,垂直),线图,点图,时间变化图,甘特图, 股票行情图,混和图, 温度计图, 刻度图等常用商用图表)
    图形可以导出成PNG和JPEG格式,同时还可以与PDF和EXCEL关联
    
    JFreeChart核心类库介绍:
            研究jfreechart源码发现源码的主要由两个大的包组成:org.jfree.chart,org.jfree.data。其中前者主要与图形
    本身有关,后者与图形显示的数据有关。具体研究如果大家有兴趣的话可以自己研究,以后有时间我会告诉大家怎么去
    研究源码。
         核心类主要有:
           org.jfree.chart.JFreeChart:图表对象,任何类型的图表的最终表现形式都是在该对象进行一些属性的定制。JFreeChart引擎本身提供了一个工厂类用于创建不同类型的图表对象
           org.jfree.data.category.XXXDataSet:数据集对象,用于提供显示图表所用的数据。根据不同类型的图表对应着很多类型的数据集对象类
           org.jfree.chart.plot.XXXPlot:图表区域对象,基本上这个对象决定着什么样式的图表,创建该对象的时候需要Axis、Renderer以及数据集对象的支持
           org.jfree.chart.axis.XXXAxis:用于处理图表的两个轴:纵轴和横轴
           org.jfree.chart.render.XXXRender:负责如何显示一个图表对象
           org.jfree.chart.urls.XXXURLGenerator:用于生成Web图表中每个项目的鼠标点击链接
           XXXXXToolTipGenerator:用于生成图象的帮助提示,不同类型图表对应不同类型的工具提示类

 

 


四、JFreeChart开发(Application/Applet)
1、pie charts,代码如下

package demo;

import java.awt.Font;

import javax.swing.JPanel;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;

public class FirstJFreeChart extends ApplicationFrame {
	  //构造函数
	  public FirstJFreeChart(String s){
	    super(s);
	    setContentPane(createDemoPanel());
	  }
	  
	  public static void main(String[] args){
		
	    FirstJFreeChart fjc = new FirstJFreeChart("CityInfoPort公司组织架构图");
	    fjc.pack();
	    RefineryUtilities.centerFrameOnScreen(fjc);
	    fjc.setVisible(true);
	  }
	  
	  //生成饼图数据集对象
	  public static PieDataset createDataset(){
	    DefaultPieDataset defaultpiedataset = new DefaultPieDataset();
	    defaultpiedataset.setValue("管理人员",10.02D);
	    defaultpiedataset.setValue("市场人员",20.23D);
	    defaultpiedataset.setValue("开发人员",60.02D);
	    defaultpiedataset.setValue("OEM人员",10.02D);
	    defaultpiedataset.setValue("其他人员",5.11D);
	    
	    return defaultpiedataset;
	  }
	  
	  //生成图表主对象JFreeChart
	  public static JFreeChart createChart(PieDataset piedataset){
	    //定义图表对象
	   // JFreeChart jfreechart = ChartFactory.createPieChart("CityInfoPort公司组织架构图",piedataset,true,true,false);
	    JFreeChart jfreechart = ChartFactory.createRingChart("CityInfoPort公司组织架构图",piedataset,true,true,false);
	    //获得图表显示对象
	    PiePlot pieplot = (PiePlot)jfreechart.getPlot();
	    //设置图表标签字体
	    pieplot.setLabelFont(new Font("SansSerif",Font.BOLD,12));
	    pieplot.setNoDataMessage("No data available");
	    pieplot.setCircular(true);
	    pieplot.setLabelGap(0.01D);//间距
	    
	    return jfreechart;
	  }
	  
	  //生成显示图表的面板
	  public static JPanel createDemoPanel(){
	    JFreeChart jfreechart = createChart(createDataset());
	    return new ChartPanel(jfreechart);
	  }
	  
	}

 图片效果见附件:

  • 大小: 21.7 KB
  • 大小: 26.4 KB
分享到:
评论
1 楼 zhang88 2010-08-08  
有没有曲线的,从数据读取数据的那种,714378662@QQ.com 谢谢

相关推荐

    JFreeChart中文教程(入门篇)与 JFreeChart重点API英文对照

    本教程将基于提供的"JFreeChart中文教程(入门篇)"和"JFreeChart重点API英文对照"来深入探讨这个库的关键概念和用法。 首先,让我们从基础开始。JFreeChart的核心在于其图表组件,这些组件包括ChartFactory类,...

    JFreeChart入门小例子.rar

    这个压缩包“JFreeChart入门小例子.rar”显然是一个初学者导向的教程资源,旨在帮助用户快速掌握如何在Java项目中集成和使用JFreeChart。 在“JFreeChart入门小例子 - 因为专注,所以专业 - BlogJava.htm”中,可能...

    JFreeChart基础入门及实例

    JFreeChart可以满足大部分图片创建的需求,实例中主要介绍饼图的做法。

    jfreechart入门资料及源包(附简单实例)

    jfreechart入门资料及源包(附简单实例)

    jFreeChart简单入门.doc

    在这个简单的入门文档中,我们将探讨如何使用 JFreeChart 创建饼图和柱状图。 首先,使用 JFreeChart 需要引入两个核心的 JAR 文件:`jcommon-版本号.jar` 和 `jfreechart-版本号.jar`。这两个库可以从 JFreeChart ...

    JFreeChart 简单的例子用作入门

    **入门指南** 1. **环境准备** 在开始使用 JFreeChart 之前,确保你的开发环境中已经安装了 Java 开发工具(JDK)和集成开发环境(如 MyEclipse)。之后,通过 Maven 或者直接下载 JFreeChart 的 JAR 包将其导入到...

    JfreeChart入门带注释

    **JfreeChart 入门详解** JFreeChart 是一个用于 Java 的开源图表库,它提供了丰富的图表类型,如柱状图、饼图、线图、散点图等,广泛应用于数据可视化、报告生成以及Web应用中。这个入门教程将帮助初学者理解如何...

    jfreechart(入门教程+案例集萃)

    **JFreeChart 入门教程及案例集萃详解** JFreeChart 是一个强大的 Java 图表库,它提供了丰富的图表类型,如柱状图、饼图、线形图、散点图以及K线图等,广泛应用于数据分析和可视化展示。本教程将深入探讨...

    JFreeChart精髓实例,入门,教程收藏

    本篇将深入探讨JFreeChart的核心概念、基本用法及实战案例。 **一、JFreeChart基础** JFreeChart的图表主要由四个组成部分构成:数据模型(Dataset)、图表(Chart)、绘图(Plot)和渲染器(Renderer)。数据模型...

    JFreeChart入门_-_使用JFreeChart开发Pie(饼状图)

    **根据 Dataset 生成 JFreeChart 对象及设置** 创建好数据集后,我们需要使用 `ChartFactory.createPieChart()` 静态方法来生成饼图。此方法接受 `PieDataset` 对象,标题,以及可选的显示 legend、tooltips 和 URL...

    JFreeChart 资料 资料

    对于初学者,可以从《JFreeChart 中文教程(入门篇)》开始学习,掌握基本的图表创建和自定义技巧。《JFreeChart 使用总结》文档则可能包含了一些实践经验,例如如何优化性能,处理大数据量,或者解决特定问题的案例...

    jfreechart使用及其资料

    JFreeChart的文档和资料对于初学者至关重要。资料中可能包含以下内容: - **快速入门指南**:提供简单的示例代码,帮助初学者快速上手。 - **API文档**:详细说明了每个类和方法的功能,是深入了解JFreeChart的必备...

    JFreeChart文档、jar包、教程

    - **入门指南**:介绍如何添加JFreeChart到项目中,以及如何创建基本的图表。 - **实例分析**:通过实际的代码示例,演示如何创建和定制各种类型的图表。 - **高级特性**:讲解如何实现动态更新、交互式图表、导出...

    jfreechart官方demo

    "jfreechart官方demo"是学习和理解JFreeChart功能及用法的绝佳资源。这个压缩包包含了多个关键文件,让我们逐一解析它们。 1. **ChangeLog**: 这个文件记录了JFreeChart的版本更新历史,包括每次更新所添加的功能、...

    jFreeChart

    主题可以通过`ChartTheme`类来定义,例如`StandardChartThemes.createClassicTheme()`创建经典主题。 **7. 图表渲染** 渲染器决定了图表元素如何显示。例如,`BarRenderer`用于柱状图,`XYLineAndShapeRenderer`...

    jfreechart中文入门

    中文介绍jfreechart类库

    jfreechart入门指南

    ### JFreeChart 入门指南 #### 一、JFreeChart 概览 JFreeChart 是一款由 JFree 在开源平台 SourceForge.net 上发起的项目,致力于提供强大的 Java 图表解决方案。除了 JFreeChart 外,JFree 还提供了其他一系列...

    JFreeChart开发文档

    - **入门示例**:通过一个简单的例子介绍如何使用JFreeChart创建图表。 #### 五、定制图表 ##### 5.1 概览 - **图表属性**:详细介绍如何自定义图表的各种属性,如标题、背景色等。 - **绘图区域属性**:介绍如何...

    JFreeChart实例入门

    JFreeChart实例入门,有代码,main方法。直接看效果

    jfreechart demo 1.0.8 源代码

    这为我们提供了快速入门和深入探索的路径。 5. **颜色和样式**:JFreeChart允许开发者自定义颜色和样式,以增强图表的视觉效果。源代码中演示了如何调整系列颜色、轴标签样式、背景色等,从而使得图表更具吸引力。 ...

Global site tag (gtag.js) - Google Analytics