jfreechart使用笔记一 基本知识
公司要做一些图表,各种图表技术整来整去,觉得还是用jfreechart比较合适。
但是jfreechart虽然开源,但是教程和文档却是收钱的,好在用的人也不好,参照网上的一些案例,研究研究也就能用了。
版本:jfreechart的最新版本是1.0.14,那就用这个。
API地址:http://www.jfree.org/jfreechart/api/javadoc/index.html 。没找到合适的文档,还是官方的比较靠谱,这个东西还是很有用的。
demo:下载下来的资源包中有个jfreechart-1.0.14-demo.jar,用java -jar 运行就好,例子很全,但是没有源文件,所以网上找了个,放到同一目录下,就可以在例子中看源码了。
准备工作做完了,正式了解下jfreechart
JfreeChart 类,这个是必须创建的,这个类的作用就相当于一个最大的容器,jfreechart的所有组件最后都被它整合。
ChartFactory chart的工厂,提供很多方法来创建类型的chart,这些创建的chart都是jfreechart的子类型。
所以要创建一个chart,一般写法都是 JfreeChart chart = ChartFactory.create***Chart(params......);
***Plot 类,这系列类其实是最主要的东西,这就是jfreechart的数据区域对象,所以的内容其实都包含在这个里面,有点像window里面的panel。
***Axis类,这系列的代表了plot中的坐标,也就是说通过操作axis类,你可以设置和调整数据区域的坐标,这个类创建的对象将被包含在plot对象里。
***Marker类,这系列的类表示数据区域里的标记,跟书签差不多,在数据区域某个数据点做个标记
***Renderer类,这系列的类表示数据区域的渲染器,通过这个可以做一些有意思的事情
***Annotation类,这系列的类表示数据区域的注解,跟标记类似,但是有一些不同,标记更多像一个刻度,而这个更像一个说明,可以设置到渲染器中来做一些区域性的注解来区分数据区域类的一些区域。这个配合java.awt.GradientPaint可以画一些有特色的背景出来
***Dataset 类,这些类基本都实现Dataset接口,这些类是用来创建jfreechart将使用的各种数据类型的,简单点 说,就是用来放要显示的数据的。
所以一个完整的chart可以这么组成
Jfreechart--plot--axis
--marker
--Renderer--Annotation
--dataset
就先到这儿,下次以我的象限图为例,再来详细描述下。