JFreeChart笔记 (一) 前言

本文分享了作者在学习JFreeChart过程中的心得与技巧,通过反编译官方示例程序,详细解析了图表容器ChartBasePanel的实现方式,并计划逐步介绍各种图表类型的绘制方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为工作中要用到做图表,所以最近一直在学习JFreeChart,在学习的过程中发现JFreeChart在做图表上真的是功能很强大,柱状图、饼图、线图、甘特图等各种常见使用样式,应用相当广泛。它本身是开源免费的,但是JFreeChart的例子源码和文档是收费的。正因如此目前关于JFreeChart的应用还没有专门的书籍介绍,网上的例子也基本都是那些随包发布的,内容很浅显,许多实用的功能都不知道如何实现。

我在学习的过程中也遇到这样的问题,查不到想要的东西,JFreeChart官网上发布的例子Demo中到时有我所需要的,但那又是不公开,收费的。经过了一番思考我想到一个方法,那就是把官方公布的jfreechart-1.0.14-demo.jar实例打包程序给反编译了,通过反编译后的源码的研究,逐步学习到JFreeChart的各种用法。

jfreechart-1.0.14-demo.jar实例包中共有150多个例子,我准备一边看一边将新得整理出来,一方面方便我自己以后查看,另一方面也为正在学习JFreeChart但又找不到详细资料的人提供一点思路。这个坑有点大,可能得很长时间填完,我会不断更新,有时可能会比较慢,希望看的人不要着急,呵呵~~~


好吧,正式开始前先介绍下,我总结整理的是以jfreechart-1.0.14-demo.jar中的例子为基础,经过我自己的整合排序,重新发布出来的。这些例子都是在swing框架下实现的,所有的示例都用到一个共同的类ChartBasePanel。这个类是用来描绘JFreeChart时所用到的基础panel容器,内容如下:

Java代码 
  1. package lw.release;  

  2. import java.awt.LayoutManager;  

  3. import java.util.ArrayList;  

  4. import javax.swing.JPanel;  

  5. import org.jfree.chart.JFreeChart;  

  6. /**

  7. * 描绘JFreeChart所用到的基础panel容器

  8. * @author 刘伟  2012-10-24

  9. */  

  10. @SuppressWarnings("serial")  

  11. public class ChartBasePanel extends JPanel {

  12.    ArrayList<JFreeChart> charts = new ArrayList<JFreeChart>();

  13.    public ChartBasePanel() {  

  14.        super();  

  15.    }

  16.    public ChartBasePanel(LayoutManager paramLayoutManager) {  

  17.        super(paramLayoutManager);  

  18.    }

  19.    /**

  20.     * 向panel容器中添加一个JFreeChart图表对象

  21.     * */  

  22.    public void addChart(JFreeChart paramJFreeChart) {  

  23.        this.charts.add(paramJFreeChart);  

  24.    }

  25.    /**

  26.     * 得到panel容器中所有的JFreeChart图表对象

  27.     * */  

  28.    public JFreeChart[] getCharts() {  

  29.        int chartNum = this.charts.size();  

  30.        JFreeChart[] arrayOfJFreeChart = new JFreeChart[chartNum];  

  31.        for (int i = 0; i < chartNum; i++){  

  32.            arrayOfJFreeChart[i] =this.charts.get(i);  

  33.        }

  34.        return arrayOfJFreeChart;  

  35.    }  

  36. }  

所有的示例,因为所有的示例都用到它,所以在此统一贴出,以后就不每个例子进行加以说明了,好吧,下一遍正式开始介绍JFreeChart的使用,尽请期待。

本文链接:领悟书生教程网,转自http://lw2078.iteye.com/blog/1705637

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值