通过JFreeChart插件只能生成普通效果的区域图,利用工厂类ChartFactory的createXYAreaChart()方法获得JFreeChart类的实例,在封装用来绘制区域图的数据时,既可以利用CategoryDataset数据集,也可以利用XYDataset数据集。
XYDataset数据集主要用来绘制与日期相关的统计图,这种统计图的横轴通常为日期标度,纵轴为数值标度,JFreeChart提供了格式化坐标轴标度的功能;在格式化横轴的日期标度时,可以通过java.text.SimpleDateFormat类格式化日期的输出格式,SimpleDateFormat类继承于java.text.DateFormat类。例如,通过下面的代码可以将日期和时间进行格式化:
DateFormat dateFormatDA = new SimpleDateFormat("yyyy-MM-dd"); // 年以4位显示
DateFormat dateFormatDB = new SimpleDateFormat("yy-MM-dd"); // 年以2位显示
DateFormat dateFormatTA = new SimpleDateFormat("HH:MM:SS"); // 24小时的形式显示
DateFormat dateFormatTB = new SimpleDateFormat("HH:MM:SS a"); // 12小时的形式显示
说明:这里只是给出了几个典型的格式化方式,读者可以在此基础上举一反三。
还可以通过org.jfree.chart.axis.DateTickUnit类定义日期标度的单位和间隔,其中一个构造函数的定义如下:
DateTickUnit(int unit, int count, DateFormat formatter)
参数说明
ll unit:日期标度的统计单位。
ll count:日期标度的输出间隔。
ll formatter:日期标度的格式化方式。
在格式化纵轴的数值标度时,可以通过java.text.DecimalFormat类格式化数值的输出格式,例如可以将数值进行如下格式化:
DecimalFormat decimalFormat = new DecimalFormat("0.00"); // 保留小数点后两位
DecimalFormat decimalFormat = new DecimalFormat("0%"); // 以百分比的形式输出
说明:这里只是给出了几个典型的格式化方式,读者可以在此基础上举一反三。
还可以通过org.jfree.chart.axis.NumberTickUnit类定义数值标度的间隔,其中一个构造函数的定义如下:
NumberTickUnit(double size, NumberFormat formatter)
参数说明
ll size:数值标度的输出间隔。
ll formatter:日期标度的格式化方式。
示例14-05 每日股票走势区域图分析
下面来看一个绘制区域图的例子,该例绘制的区域图效果如图14.8所示。
图14.8 每日股票走势区域图分析
代码14-05 光盘位置:光盘\mingrisoft\14\sl\05
定义日期轴,每隔两小时输出一个标记,代码如下:
DateAxis domainAxis = new DateAxis("统计时间" + date);
DateFormat dateFormat = new SimpleDateFormat("HH");
DateTickUnit unit = new DateTickUnit(DateTickUnit.HOUR, 2, dateFormat);
domainAxis.setTickUnit(unit);
plot.setDomainAxis(domainAxis);
定义数值轴,以百分比的形式输出,并且每隔5个百分比输出一个标记,代码如下:
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
DecimalFormat decimalFormat = new DecimalFormat("0%");
NumberTickUnit ntu = new NumberTickUnit(0.05, decimalFormat);
rangeAxis.setTickUnit(ntu);
分享到:
相关推荐
**正文** JFreeChart是一款强大的Java图形库,它允许开发者创建各种复杂的图表,包括我们这里关注的雷达图(也...无论你是为了分析还是报告,都能利用JFreeChart轻松创建出符合需求的雷达图,清晰地展示多维度数据。
在Java编程语言中,利用JFreeChart库实现实时曲线图是一种常见的数据可视化技术,尤其适用于需要实时监控或展示数据变化的应用场景。JFreeChart是一个开源的Java图表库,提供了丰富的图表类型和自定义选项,使得...
JFreeChart 是一个强大的 Java 库,专门用于生成各种统计图表,包括饼图、柱状图、线图、区域图等,适用于网页应用和传统的桌面应用。这篇文章将详细介绍如何利用 JFreeChart 在 Web 环境中生成统计图表。 **一、...
jFreeChart是java编程语言中一个功能强大、开源免费的图表库,能够生成各种类型的图表,包括曲线图、饼状图、柱状图等。通过jFreeChart,可以快速地生成高质量的图表,以满足不同领域的需求。 jFreeChart核心对象类...
Java 利用 JFreeChart 实现数据统计图 在数据挖掘中,数据分析的结果需要直观地展现给用户,这就需要使用数据统计图。Java 中可以使用 JFreeChart 库来实现各种数据统计图,如柱形图、饼图、折线图等。下面将详细...
首先,**FusionCharts** 是一款基于JavaScript的图表库,提供了超过90种不同类型的图表,如柱状图、饼图、线图、区域图等。它通过XML或JSON数据格式与服务器进行通信,以生成丰富的交互式图表。在Java Web项目中,...
### 利用JfreeChart开发包绘制图表 #### 概述 随着信息技术的快速发展,各行各业积累了大量的数据。尽管数据能够精确地反映事实,但其直观性不足,这限制了人们快速理解和吸收信息的能力。因此,将这些数据转换为...
《JFreeChart生成报表详解》 在现代软件开发中,数据可视化已经成为不可或缺的一部分,尤其是在Web应用程序中。JFreeChart作为一款强大的Java图表库,能够帮助开发者轻松生成各种类型的图表,适用于网页、应用和...
使用MVC架构时,模型层负责处理数据,视图层利用JFreeChart生成图表,控制器则协调这两者。 综上所述,JFreeChart是一个功能强大的图表库,适用于各种数据可视化需求。通过熟练掌握其API和配置,开发者可以在Web...
本篇文章将详细讲解如何利用 JFreeChart 创建不同的图表类型,包括饼状图、单组柱状图、多组柱状图以及堆积柱状图。 首先,你需要从官方网站或指定的源获取 JFreeChart 的最新版本,例如 jfreechart-1.0.13.jar,...
2. 服务器端生成图表图片:在Web服务器端利用JFreeChart生成图表图片,然后发送给浏览器,这是更常见且兼容性更好的方式。 **JFreeChart的主要产品** - **JFreeReport**:报表解决方案工具,用于创建复杂的报告。 -...
在本案例中,我们将通过一系列步骤来学习如何利用JFreeChart组件为Web应用程序生成饼形图。这一过程不仅涉及图表的创建与展示,还包括数据集的构建、配置图表样式以及在Web环境中部署所需的组件等。 #### ...
JFreeChart是一款强大的Java图表库,它为开发者提供了丰富的图表类型,如柱状图、饼图、线图、散点图、面积图等,适用于各种数据可视化需求。本示例集合包含了使用JFreeChart创建各种图形的代码实例,旨在帮助开发者...
本篇文章将详细介绍如何利用JFreeChart与JSP结合,实现动态生成并显示折线图,以及在MyEclipse工程中的具体操作步骤。 首先,要理解JFreeChart的工作原理。JFreeChart提供了一系列的类和方法,通过这些我们可以创建...
在JFreeChart中,可以使用`PieDataset`接口存储数据,然后调用`JFreeChart.createPieChart()`方法生成饼形图。饼图可以有多种定制选项,如设置切片颜色、添加工具提示和标签等。 3. **折线图(Line Chart)**:折线...
- **实现方法**:通过 JFreeChart 创建区域图,并调整其样式。 **2.9 差异图** - **定义**:一种用于显示两个数据系列之间差异的图表类型。 - **用途**:适用于突出显示两个数据系列之间的相对差异。 - **实现方法*...
JFreeChart,作为一款功能强大的Java图表绘制工具,提供了丰富的图表类型支持,包括饼图、柱状图、线图、区域图、分布图、混合图、甘特图及仪表盘等,几乎涵盖了所有常见的数据可视化需求。本文将深入探讨如何在...
JFreeChart 是一个开源的 Java 图表库,它允许开发者创建各种复杂的图表,如柱状图、饼图、散点图、线形图等。在本文中,我们将深入探讨 JFreeChart 的核心类和它们在创建图表过程中的作用。 1. **JFreeChart 类**...
值得注意的是,由于JFreeChart生成的是静态图像,因此无法直接响应用户的交互操作,如点击图表区域查看详细数据等。如果需要实现这些功能,可能需要结合JavaScript库(如D3.js)或者其他服务器端技术,如GWT或Vaadin...