JFreeChart基础(1) (转自 JSP开发技术大全)

JFreeChart是一个Java开源项目,是一款优秀的Java图表生成插件,它提供了在Java Application、Servlet和JSP下生成各种图片格式的图表,包括柱形图、饼形图、线图、区域图、时序图和多轴图等。本章将详细介绍利用JFreeChart生成各种图表的技术要点。

14.1 JFreeChart基础

本节将介绍JFreeChart插件的下载与使用方法,以及JFreeChart插件的核心类及其 功能。

14.1.1 JFreeChart的下载与使用

在JFreeChart的官方网站(http://www.jfree.org/jfreechart/index.html)上可以下载到该插件,该插件有两个版本。

l     freechart-1.0.5.zip,该版本适用于Windows系统。

l     jfreechart-1.0.5.tar.gz,该版本适用于UNIX/Linux系统。

本书所有示例的开发环境均为Windows系统,解压缩jfreechart-1.0.5.zip后将得到一个名为jfreechart-1.0.5的文件夹,只需将lib子文件夹内的如下文件复制到Web应用程序目录中的/WEB-INF/lib目录下。

l     jfreechart-1.0.5.jar。

l     jcommon-1.0.9.jar。

l     junit.jar。

l     gnujaxp.jar。

l     servlet.jar。

并且在web.xml文件中添加如下代码:

<servlet>

<servlet-name>DisplayChart</servlet-name>

<servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>DisplayChart</servlet-name>

<url-pattern>/servlet/DisplayChart</url-pattern>

</servlet-mapping>

这样,就可以利用JFreeChart插件生成动态统计图表了。利用JFreeChart插件生成动态统计图表的基本步骤如下。

(1)创建绘图数据集合。

(2)创建JFreeChart实例。

(3)自定义图表绘制属性,该步可选。

(4)生成指定格式的图片,并返回图片名称。

(5)组织图片浏览路径。

(6)通过HTML中的<img>元素显示图片。

14.1.2 JFreeChart核心类简介

在使用JFreeChart插件之前,先介绍该插件的核心类及其功能,这对将来能够得心应手地使用该插件是非常重要的,JFreeChart核心类及其功能如表14.1所示。

表14.1                                                  JFreeChart核心类及其功能

类    名

功    能

JFreeChart

图表对象,生成任何类型的图表都要通过该对象,JFreeChart插件提供了一个工厂类ChartFactory,用来创建各种类型的图表对象

XXXDataset

数据集对象,用来保存绘制图表的数据,不同类型的图表对应着不同类型的数据集对象

XXXPlot

绘图区对象,如果需要自行定义绘图区的相关绘制属性,需要通过该对象进行设置

XXXAxis

坐标轴对象,用来定义坐标轴的绘制属性

XXXRenderer

图片渲染对象,用于渲染和显示图表

XXXURLGenerator

链接对象,用于生成Web图表中项目的鼠标单击链接

XXXToolTipGenerator

图表提示对象,用于生成图表提示信息,不同类型的图表对应着不同类型的图表提示对象

通过表14.1,可以简单了解JFreeChart插件中各个类的功能,下面将仔细讲解利用JFreeChart生成各种图表的技术要点。

 

JFreeChart基础(1) (转自 JSP开发技术大全)的更多相关文章

  1. 利用JFreeChart生成区域图 (5) (转自 JSP开发技术大全)

    利用JFreeChart生成区域图 (5) (转自 JSP开发技术大全) 14.5 利用JFreeChart生成区域图 通过JFreeChart插件只能生成普通效果的区域图,利用工厂类ChartFac ...

  2. JFreeChart生成饼形图(3) (转自 JSP开发技术大全)

    JFreeChart生成饼形图(3) (转自 JSP开发技术大全) 14.3 利用JFreeChart生成饼形图 通过JFreeChart插件,即可以生成普通效果的饼形图,也可以生成3D效果的饼形图: ...

  3. 利用JFreeChart生成时序图(6) (转自 JSP开发技术大全)

    利用JFreeChart生成时序图(6) (转自 JSP开发技术大全) 14.6 利用JFreeChart生成时序图 通过JFreeChart插件只能生成普通效果的时序图,利用工厂类ChartFact ...

  4. 利用JFreeChart生成折线图 (4) (转自 JSP开发技术大全)

    利用JFreeChart生成折线图 (4) (转自 JSP开发技术大全) 14.4 利用JFreeChart生成折线图 通过JFreeChart插件,既可以生成普通效果的折线图,也可以生成3D效果的折 ...

  5. JFreeChart生成饼形图(3)11 (转自 JSP开发技术大全)

    FreeChart生成饼形图(3) (转自 JSP开发技术大全) 14.3 利用JFreeChart生成饼形图 通过JFreeChart插件,即可以生成普通效果的饼形图,也可以生成3D效果的饼形图:如 ...

  6. JFreeChart生成柱形图(2) (转自 JSP开发技术大全)

    JFreeChart生成柱形图(2) (转自 JSP开发技术大全) 14.2 利用JFreeChart生成柱形图14.2.1 利用DefaultCategoryDataset数据集绘制柱形图 通过JF ...

  7. 利用JFreeChart生成组合图表 (8) (转自 JSP开发技术大全)

    利用JFreeChart生成组合图表 (8) (转自 JSP开发技术大全) 14.8 利用JFreeChart生成组合图表  实例位置:光盘\mingrisoft\14\dxyy\02 通过JFree ...

  8. 利用JFreeChart生成多轴图表(7) (转自 JSP开发技术大全)

    利用JFreeChart生成多轴图表(7) (转自 JSP开发技术大全) 14.7 利用JFreeChart生成多轴图表 通过JFreeChart插件还可以生成拥有多个坐标轴的图表,简称多轴图表.在生 ...

  9. Java Web开发技术教程入门-初识动态网页

    这段时间学校搞了一个"阅战阅勇"的阅读活动,奖品还是挺丰富的~于是,奔着这些奖品,我去图书馆借了这本<Java Web开发技术教程>.一是为了那些丰富的奖品,二是为了回 ...

随机推荐

  1. 零基础入门学习Python(22)--函数:递归是神马

    知识点 递归是神马? 递归是属于算法的范畴. 递归就是函数调用自身的一种行为. >>> def g(): return g() >>> g() Traceback ...

  2. Linux中find命令用法大全

    Linux 查找命令是Linux系统中最重要和最常用的命令之一.查找用于根据与参数匹配的文件指定的条件来搜索和查找文件和目录列表的命令.查找可以在各种条件下使用,您可以通过权限,用户,组,文件类型,日 ...

  3. CSS——可视化格式模型

    CSS的可视化格式模型 CSS中规定每一个元素都有自己的盒子模型(相当一规定了这个元素如何显示): 然后可视化格式模型则是把这些盒子模型按照规则摆放到页面上,也就是如何布局: 换句话说,盒子模型规定了 ...

  4. stark组件之处理函数动态url构造(五)

    在这个组件中有内置的4个处理函数,它们都有自己对应的url,那么它们的url是怎么构造的呢? ... urlpatterns = [ re_path('list/$', self.wrapper(se ...

  5. C语言学习3

    实现输入错误后重新输入 通过输入指定的行数和列数打印出二维数组对应的任一行任一列的值: #include <stdio.h> void main() { ][] = {{, , , },{ ...

  6. noi.ac NOIP2018 全国热身赛 第二场 T3 color

    [题解] 我们可以发现每次修改之后叶子结点到根的路径最多分为两段:一段白色或者黑色,上面接另一段灰色的.二分+倍增找到分界点,然后更新答案即可. check的时候只需要判断当前节点对应的叶子结点的区间 ...

  7. angular2集成highchart

    集成highchart的配置困扰了我很久,今天终于解决了: 1.修改tsconfig.app.json: "compilerOptions": { //... "type ...

  8. Leetcode 147.对链表进行排序

    对链表进行插入排序 对链表进行插入排序. 插入排序算法: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表. 每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它 ...

  9. Python中表示中文的pattern

    Python中表示中文的pattern:[\u4e00-\u9fff] 汉字unicode码表: http://jlqzs.blog.163.com/blog/static/2125298320070 ...

  10. 【Linux】date命令用法详解(日期格式)

    inux下date命令用法 date [OPTION]… [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] date命令参数 ...