项目中用到JFreeChart ,在使用过程中发现该开源包还是很不错的。
JFreeChart 用 ChartFactory 工厂方便使用者生成各种不同的图形。在调用各类图形的构造函数时候要传Dataset\Renderer\Axis 对象以及一些说明信息。其中比较关键的是Dataset,也就是生成图形的具体数值。
一下是摘抄http://hi.baidu.com/xinfeng999/blog/item/2f83e4138b3fcb035baf53fd.html的内容
JFreeChart 中的数据源是DataSet接口类型。该接口有三个主要的子类接口:CategoryDataset、PieDataset、SeriesDataset
CategoryDataset 接口的实现类基本上都维护了一个三元组<value,row,col>的列表结构。不同的实现类中value 的类型不相同。<row,col>唯一确定一个三元组。CategoryDataset的实现类提供对这个三元组的增删改查操作。
PieDataset 接口有两个主要的实现类:CategoryToPieDataset 、DefaultPieDataset。PieDataset接口的实现类基本上都维护了一个二元组<key,value>的列表结构。Key唯一确定一个二元组。CategoryDataset的实现类提供对这个二元组的增删改查操作。CategoryToPieDataset中的二元结构列表通过对CategoryDataset类型的对象指定行或者列转化过来。DefaultPieDataset直接维护一个二元结构列表。
SeriesDataset 接口的实现类基本上都维护了一种特定数据结构的列表。以TimeSeriesCollection为例。它维护一个TimeSeries对象列表,提供对该列表的增删查操作。每个TimeSeries对象维护一个<time,value>列表,提供对该列表的增删改查操作。