`

jFreeChart(二)

阅读更多

创建柱状图
1 引入jFreechart的包

2 在web.xml中加入

XML code
< 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 >


3 在jsp或者servlet或者action中写

Java code
// 创建一个柱状图 DefaultCategoryDataset dataSet = new DefaultCategoryDataset(); // 数据装入 for ( int i = 0 ;i < list.size();i ++ ) { Item item = (Item)list.get(i); dataSet.setValue(Item.getRating(), " testName " , Item.getTime()); } JFreeChart chart = ChartFactory.createBarChart( " 统计图 " , " ratings " , " time " , dataSet, PlotOrientation.VERTICAL, false , true , false ); try { String filename = ServletUtilities.saveChartAsPNG(chart, 500 , 300 , null , session); String graphURL = request.getContextPath() + " /servlet/DisplayChart?filename= " + filename; request.setAttribute( " graphURL " ,graphURL); } catch (Exception e){ }



4 在页面引入

HTML code
< img src ="<%= request.getAttribute(" graphURL") % > ">

对于临时文件的清除,jfreechart提供了一个实现了HttpSessionBindingListener的类ChartDeleter,
里面有个valueUnbound方法,这个方法是在session执行remove的时候被执行,
也就是在页面刚进入的时候调用
session.removeAttribute("JFreeChart_Deleter");这样会删除当前session之前生成的图表。

还有一种方法是用流输出的方式,直接,即:
注释掉上面的try中的代码,加入如下代码
ChartUtilities.writeChartAsJPEG(response.getOutputStream(),chart,500,300);
然后在显示页面引入

< img src ="<%=request.getContextPath()%>/servlet ">
分享到:
评论

相关推荐

    java使用JFreeChart制作柱形图

    Java 使用 JFreeChart 创建柱形图是一种常见的数据可视化方法,尤其在数据分析和Web应用程序中。JFreeChart 是一个强大的开源库,它提供了多种图表类型,包括柱形图、饼图、线图等,使得开发者能够方便地将数据转化...

    Jfreechart

    **二、解决方案** 解决 JFreeChart 乱码的关键在于正确设置字体。以下是一些关键步骤: 1. 首先,定义一个合适的字体,例如 `Font CHART_FONT = new Font("黑体", 12, 12)` 或者 `Font CHART_FONT = new Font(...

    代替jfreechart的FusionCharts

    二、FusionCharts与jFreeChart的比较 1. 用户体验:FusionCharts的图表设计时尚且现代,具有平滑的动画效果,用户交互性更强。而jFreeChart虽然功能强大,但图表样式相对传统,动画效果较弱。 2. 易用性:...

    JFreeChart

    jfreechart-1.0.13.zip是JFreeChart库的源代码和二进制文件,包含了JFreeChart的核心库和依赖的JAR文件。为了在项目中使用JFreeChart,你需要将这些JAR文件添加到项目的类路径中。对于开发者来说,源代码可以用于...

    jfreechart中文学习文档

    #### 二、本文档概述 ##### 1.2 本文档 本文档详细介绍了 JFreeChart 的安装、配置以及如何使用它来创建不同类型的图表。同时,还包含了示例代码和配置步骤,帮助读者更快地掌握 JFreeChart 的使用方法。 **1.2.1...

    JfreeChart各种图形案例

    **二、JFreeChart的使用** 1. **创建图表对象**:首先,你需要创建一个特定类型的图表对象,例如`JFreeChart chart = ChartFactory.createLineChart()`用于创建折线图。 2. **设置图表数据**:通过`CategoryDataset`...

    jfreechart+cewolf的架包

    **JFreeChart与Cewolf:构建...同时,由于开源的特性,开发者可以根据具体需求对JFreeChart和Cewolf进行二次开发,以实现更多定制化功能。总的来说,JFreeChart和Cewolf是Java开发中实现报表和图形界面不可或缺的工具。

    JFreeChart用户开发指南1.0.6(中文).pdf

    #### 二、JFreeChart概述 ##### 2.1 什么是JFreeChart? - **定义**:JFreeChart是一款开源的Java图形开发库,主要用于在应用程序、Applets、Servlets、JSP页面等环境中生成各种图表。 - **开源许可**:JFreeChart...

    JFreeChart详解

    ### JFreeChart详解 #### 一、概述 JFreeChart是一款功能强大的Java图表库,能够帮助开发者轻松地创建各种类型的图表。它支持多种图形展示方式,包括饼图、折线图、柱状图(水平与垂直)、甘特图、XY散点图、时间...

    jfreeChart pdf文档(原文)

    ### jfreeChart 实际开发运用手册知识点概览 #### 一、引言 **1.1 JFreeChart 是什么?** ##### 1.1.1 概述 JFreeChart 是一个免费的图表库,专为 Java 平台设计。它能够应用于各种 Java 应用程序、Applet、...

    JFreeChart网页版Demo

    **二、饼图与条形图** 1. **饼图(Pie Chart)**:饼图用于表示部分与整体之间的比例关系,每个扇区代表一个数据类别,其面积大小与该类别的占比相对应。在JFreeChart中,我们可以设置饼图的切片颜色、标签、工具...

    jfreechart英文版api

    **二、JFreeChart使用步骤** 1. **创建数据集**: 根据需要选择合适的数据集类型,如CategoryDataset、TimeSeriesCollection等,填充数据。 2. **创建图表**: 使用ChartFactory创建所需的图表类型,传入数据集和...

    jfreechart教程

    二、JFreeChart Demos JFreeChartDemos目录下的源码提供了许多示例程序,展示了JFreeChart的多种图表类型和自定义选项。这些示例是学习和理解JFreeChart用法的绝佳资源。通过阅读和运行这些示例,开发者可以了解如何...

    JFreeChart画曲线图

    1. **创建数据源**:你需要提供一个二维数组或者`XYDataset`对象来存储数据。这个数据源可以是自定义的类,也可以是JFreeChart提供的`DefaultCategoryDataset`或`XYSeriesCollection`等预定义类型。 2. **创建图表...

    JFreeChart使用总结

    #### 二、JFreeChart的获取 JFreeChart是作为开源项目托管在SourceForge.net上。除了JFreeChart本身,JFree组织还提供了其他几个相关的项目: - **JFreeReport**:报表解决方案工具。 - **JCommon**:JFreeReport...

    JFreeChartDemo案例的源码

    **二、在Servlet中使用JFreeChart** 1. **创建图表**:首先,我们需要创建一个 `ChartFactory` 的实例,通过调用对应的静态方法,如 `createBarChart()`,传入图表标题、横轴标签、纵轴标签、数据源和图例布局等...

Global site tag (gtag.js) - Google Analytics