JFreeChart.ppt
《JFreeChart.ppt》由会员分享,可在线阅读,更多相关《JFreeChart.ppt(34页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、动态图表JFreeChart金晓杰日期:2012-081页简介 JFreeChart是Java中开源的制图组件,主要用于生成各种动态图表。在Java的图形报表技术中,JFreeChart组件提供了方便、快捷、灵活的制图方法。作为一个功能强大的图形报表组件,JFreeChart为Java的图形报表技术提供了解决方案。在Java项目的应用中,JFreeChart组件几乎可以满足目前图形报表的所有需求。JFreeChart组件可以生成各种各样的图形报表,如常用的柱形图、区域图、饼形图、折线图、时序图、甘特图等;而对于同一种类型的图表,JFreeChart组件还提供了不同的表现方式。2页JFreeCh
2、art的下载与使用 JFreeChart是开放源代码的图形报表组件(开源站点SourceF上的一个Jave项目),其主页为http:/www.jfree.org/jfreechart/index.html。3页 JFreeChart 的主要类和接口1、JFreeChart 类 在生成图形报表时,制图对象JFreeChart是必不可少的对象,它可以直接通过new关键字进行实例化,也可以通过制图工厂ChartFactory类进行实例化。当使用new关键字进行实例化时,需要设置大量的属性信息,因为JFreeChart组件提供的图表种类很多,对于每一种图表都要进行特殊的设置,非常繁琐。因此在使用过程中
3、,一般都使用制图工厂ChartFactory类进行创建。2、ChartFactory 类 制图工厂ChartFactory是一个抽象类,它不能被实例化,但提供了创建各种制图对象的方法,如创建柱形图对象、区域图对象、饼形图对象、折线图对象等方法,这些方法都是静态的方法,可直接创建JFreeChart对象,并且是属于某一种具体的图表类型的JFreeChart对象,使用非常方便。4页ChartFactory常用方法及说明如下:图图 表表 类类 型型方方 法法说说 明明柱形图柱形图public static JFreeChart createBarChart()创建一个常规的柱形图对象public s
4、tatic JFreeChart createBarChart3D()创建一个3D效果的柱形图对象饼形图饼形图public static JFreeChart createPieChart()创建一个常规的饼形图对象public static JFreeChart createPieChart3D()创建一个3D效果的饼形图对象折线图折线图public static JFreeChart createLineChart()创建一个常规的折线图对象public static JFreeChart reateLineChart3D()创建一个3D效果的折线图对象5页 JFreeChart 的主要类
5、和接口3、XXXXXDataset数据集对象,用于提供显示图表所用的数据。根据不同类型的图表对应着很多类型的数据集对象类。常用的数据集对象有:柱状图数据集对象 DefaultCategoryDataset、饼图数据集对象DefauldPieDataset和曲线图数据集对象 DefaultTableXYDataset。4、XXXXXPlot 图表区域对象,基本上这个对象决定着什么样式的图表,创建该对象的时候需要Axis、Renderer以及数据集对象的支持。常用的Plot对象有:柱状图CategoryPlot、饼图PiePlot和曲线图XYPlot。5、XXXXXAxis用于处理图表的两个轴:纵
6、轴和横轴。常用的有NumberAxis数据轴,DateAxis日期轴。6页 JFreeChart 的主要类和接口6、XXXXXRenderer负责如何显示一个图表对象。常用的Renderer有DefaultCategoryItemRenderer 柱状图显示器StandardXYItemRenderer曲线图显示器。饼图的Renderer7、XXXXXURLGenerator用于生成Web图表中每个项目的鼠标点击链接。常用的URLCenerator有StandardCategoryURLGenerator、StandardPieURLGeneratorStandardXYURLGenerato
7、r 8、ChartUtilities 图表工具类,用于输出各种图表 writeChartAsPNG(params)writeChartAsJPEG(params)saveChartAsPNG(params)saveChartAsJPEG(params)7页JfreeChart中的常见包org.jfree.chart.servlet.DisplayChart 这个包中的DisplayChart继承自Httpservlet 用于处理显示图象。org.jfree.chart.servlet.ServletUtilities 这 个 包 中 的 ServletUtilitie类 有 一 系 列 方 法
8、,例 如,saveChartAs*;saveChartAs*是把图表按照不同的形式存储为图象;sendTempFile方法被重载了很多 次,用于把文件流发送response。8页JfreeChart中的常见包org.jfree.chart 这个包包含JfreeChart类库中主要的类和接口org.jfree.chart.axis 这个包包含所有轴有关的类和接口:a.CategoryPlot 和 XYPlot 操作两个轴(默认),我们叫他们domain轴和range轴。这些专用名词是建立这些地图可视化地把domain轴的值映射到value轴上的概念之上。效果上,domain轴作为x轴,range
9、作为y轴,但我们更热衷与专用名词 b.轴类提供的默认设置基本适合大多数程序的需要,但是,有很多通过JFreeChartAPI改变属性来定制轴的特性。一定要通过读API来熟悉可以定制的选项。c.JFreeChart的一个更强大的功能是同一个Chart可以提供多个domain轴和多个value轴轴类是可克隆和可串行化的。9页10页11页12页创建数据集(DefaultCategoryDataset)创建JFreeChart设置属性图形输出开发流程13页1.饼图饼状图是图形报表中最为简单和基础的图形,它又是jfreechart中封装最为好的报表,有很多接口和方法专门为它设计,所以饼状图是学习jfre
10、echart首先的,同时也是非常重要的 14页 PieDataset(接口):用于生成圆饼图的数据集类型 DefaultPieDataset:实现PieDataset接口,并用于绘制圆饼图的必需数据集,它主要用于存储一些手动添加的数据集 defaultpiedataset.setValue(key,value)用于向数据集中添加数据 key:一般为该数据的来源名称 value:一般为double类型的数据Pie 所用的数据集:所用的数据集:15页Pie chart 常用类介绍常用类介绍JFreeChart 具体的图表类,可由ChartFactory创建不同的图表对象 通过该类提供的方法可以对J
11、FreeChart对象图片标题字体、背景图片、背景颜色、边框等进行设置。ChartFactory 图表工厂,用于创建各种图表(JFreeChart)对象 普通效果的饼状图:ChartFactory.createPieChart()3D 效果的饼状图:ChartFactory.createPieChart3D()方方 法法说说 明明public void setAntiAlias(boolean flag)设置字体模糊边界public void setBackgroundImage(Image image)设置背景图片public void setBackgroundImageAlignment
12、(int alignment)设置背景图片对齐方式,其参数常量定义在Align类中public void setBackgroundImageAlpha(float alpha)设置背景图片透明度public void setBackgroundPaint(Paint paint)设置背景颜色public void setBorderPaint(Paint paint)设置边界线条颜色public void setBorderVisible(boolean visible)设置边界线条是否可见16页Plot(接口)plot.setBackgroundAlpha(0.5F);/设置透明度plot
13、.setBackgroundPaint(Color.blue);/设置背景色plot.setCircular(false);/指定显示的饼图上圆形(false)还椭圆形(true)plot.setLabelFont(new Font(宋体,0,12);/设置分类标签字体plot.setLabelGap(0.09D);/设置字体间的距离plot.setExplodePercent(JavaSE,0.5D);/把XXX(JavaSE)这个数据块 分离出来plot.setLabelGenerator(new StandardPieSectionLabelGenerator(0(2 percent);
14、/设显示值的样式,0表示 data的KEY 1表示:value;2表示站圆饼的百分比17页2、柱状图18页2.1得到并填充结果集addValue方法n 用來設置默認結果集中值对象.addValue(参数1,参数2,参数3);对象.addValue(参数1,参数2,参数3);对象.addValue(参数1,参数2,参数3);对象.addValue(参数1,参数2,参数3);对象.addValue(参数1,参数2,参数3);dataset.addValue(1,First,dataset.addValue(1,First,Category 1);Category 1);dataset.addVal
15、ue(5,second,dataset.addValue(5,second,Category 2);Category 2);dataset.addValue(3,three,dataset.addValue(3,three,Category 3);Category 3);dataset.addValue(4,four,dataset.addValue(4,four,Category 4);Category 4);得到默認結果集的類 往結果集中添加值DefaultCategoryDataset dataset=new DefaultCategoryDataset();DefaultCategor
16、yDataset dataset=new DefaultCategoryDataset();19页2 2.2 2 得到得到ChartChart工厂工厂(ChartFactoryChartFactory)uchartchart工厂类方法工厂类方法n 方法名:createBarChartn 参数:title,横坐标,纵坐标,数据集,PlotOrientation(垂直显示),legend,tooltips,urlsJFreeChart chart=ChartFactory.createBarChart(标题,横坐标,纵坐标,数据集,显示方向,legend,tooltips,urls);JFreeC
17、hart chart=JFreeChart chart=ChartFactory.createBarCharChartFactory.createBarChart(t(xinxin,Categry,Categry,Value,getDataset(),Value,getDataset(),PlotOrientation.VERTICAL,PlotOrientation.VERTICAL,true,true,true);true,true,true);20页2.3、属性JFreeChart chart=ChartFactory.createBarChart(统计,Categry,Value,ge
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JFreeChart
限制150内