简化JFreeChart创建WEB图表

【demo积累】— 使用JFreeChart创建基于web的图表 之前做评教系统的时候,关于教师成绩分析那块,本应有形成图表的功能。但一直自认为“很复杂”,就一直将它放在待下一期完善的任务中......直到现在了解了如何生成图表,才知道一直误会它了。     接下来我要介绍的生成图表的方法,是在web服务器端生成好图表图片文件后发送给浏览器实现的。     过程中,我们用到了一个第三方开源项目:JFreeChart。它主要用来各种各样的图表,这些图表包括 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> JFreeChart是开放源代码项目,它主要用来各种各样的图表,这些图表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。(为什么好的东西都是老外做的) 最近由于在一个项目中要创建WEB图表,对JFreeChart做了一些研究。 一.JFreeChart创建WEB图表的基本知识 JFreeChart主要是由三个类构成: org.jfree.chart.servlet.ChartDeleter org.jfree.chart.servlet.DisplayChart org.jfree.chart.servlet.ServletUtilities 我在下面做一下简单的介绍: ChartDeleter 继承自HttpSessionBindingListener,用于实现当Session 关闭时,删除 临时目中的图象文件。 ServletUtilities有一系列方法:saveChartAs*;saveChartAs*是把图表按照不同的形式存储为图象;sendTempFile方法被重载了很多次,用于把文件流发送response; DisplayChart继承自Httpservlet 用于处理显示图象; 在你的应用中 web.xml文件必须配置DisplayChart;配置形式如: <web-app> <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> </web-app> 二 .如何利用JFreeChart创建WEB图表 JFreeChart创建图表的,在JFreeChart已经有了基于GUI的例子(不知道为什么没有基于WEB的例子);而且例子很详尽,包括各种图表的创建。那么如何把图表创建到WEB面上呢,JFreeChart的机制是把图表保存为图片,然后WEB页上链接图片(当然也可以通过Applet在WEB上显示图表)。 创建WEB图表的过程: JFreeChart chart =ChartFactory.create***(***);//在JFreeChart中,通过调用ChartFactory的工程方法创建各种形式的图表,返回一个JFreeChart对象; filename = ServletUtilities.saveChartAs*(chart, height, weight,session);//把JFreeChart对象保存成目中图片形式。返回图片名 imageurl=request.getContextPath() "/servlet/DisplayChart?filename=" filename;//图片的url 上面描述了创建WEB图表的基本过程,只要按照上面的步骤封装到Bean里面。用返回一个Image url ,在WEB里调用Bean 获得图片的url; 下面我给出一个例子: 下面是java bean 的代码 import java.io.*; import java.awt.Insets; import java.awt.Font; import java.text.SimpleDateFormat; import java.util.Iterator; import java.util.Locale; import java.text.NumberFormat; import javax.servlet.http.HttpSession; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.jfree.data.*; import org.jfree.chart.*; import org.jfree.chart.axis.*; import org.jfree.chart.renderer.StandardXYItemRenderer; import org.jfree.chart.plot.*; import org.jfree.chart.entity.*; import org.jfree.chart.urls.*; import org.jfree.chart.servlet.*; import org.jfree.chart.TextTitle; import java.net.URL; public class ImagShow { public String getimageurl(HttpServletRequest request, HttpServletResponse response) { String titleStr = "2003某某大学就业率统计"; String filename = null; Font font; try { PiePlot plot = new PiePlot(getdataset()); plot.setInsets(new Insets(0, 5, 5, 5)); JFreeChart chart = new JFreeChart("", JFreeChartConstants.DEFAULT_TITLE_FONT, plot, true); TextTitle title = new TextTitle(titleStr); chart.setTitle(title); //设置标题 font = new Font("黑体", Font.CENTER_BASELINE, 20); //设置标题的字体和大小 title.setFont(font); chart.setBackgroundPaint(java.awt.Color.white); //设置图片的底色 HttpSession session = request.getSession(); filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, session); ServletUtilities.sendTempFile(filename, response); return request.getContextPath() "/servlet/DisplayChart?filename=" filename; } catch (Exception ex) { System.out.print(ex.fillInStackTrace()); } return null; } private DefaultPieDataset getdataset() { DefaultPieDataset data = new DefaultPieDataset(); data.setValue("未就业", 2000); data.setValue("就业", 400); data.setValue("不知去向", 100); return data; } } 下面是Jsp的代码: <%@ page contentType="text/html;charset=gb2312"%> <%@ page import = "com.tryit.Tryitshow"%> <%ImagShow imgshow =new ImagShow ();%> <img src="<%= imgshow.getimageurl(request,response) %>" width=500 height=300 border=0 > 运行这个例子,你会在Jsp页面上看到一个图表;(在JBuilder下的运行方式,图片不能显示处理,请在WEB服务器中启动这个例子;request library要包含Jcommon;WEB.xml文件要配置DisplayChart);
使用JFreeChart来创建图表 一、简介:JFreeChart是开放源代码站点SourceForge.net上的一个JAVA项目,它主要用来各种各样的图表,这些图表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。为了创建一个可以在web浏览器上查看到图表一般有两种做法:第一种就是使用applet利用java本身对图形的支持来显示一个图表;第二种就是直接在web服务器 阅读详情

相关推荐

Java绘制图表框架JFreeChart入门

1.下载JFreeChart框架 最新版的JF

xjh1991xjh的专栏 3647

JFreeChart简单用法

需要用到的包 jfreechart-0.9.20.jar,jcommon-0.9.5.jar 创建一般步骤: 1.生成org.jfree.data.DefaultCategoryDataset对象,方法如下:DefaultCategoryDataset dataSet=new DefaultCategoryDataset();//DefaultCa...

weixin_30325971的博客 92

JFreeChart与MyEclipse集成的图表创建教程

本文还有配套的精品资源,点击获取 简介:本教程旨在展示如何在Java开发环境中使用JFreeChart库来创建各种图表,并通过MyEclipse集成开发环境进行开发和测试。教程涵盖了导入JFreeChart库、创建和配置图表、绘制图表、图表属性设置、图表组件整合、项目运行与调试以及性能优化和交互功能的实现等关键步骤。通过本教程,开发者可以掌握如何在MyEclipse中快速有...

weixin_31715353的博客 1176

JFreeChart的简单使用

JFreeChart是JAVA平台上的一个开放的图表绘制类库。它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计。JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,并且可以产生PNG和JPEG格式的输出,还可以与PDF和EXCEL关联。 使用JFreeChart先要导入两个包jc.

YoungHD的博客 1950

C#图表开发避坑指南:Chart控件的Series和Points属性详解

本文深入解析C#图表开发中Chart控件的Series和Points核心属性,提供避坑指南。详细阐述了Series的数据序列管理、Points的高效操作与空值处理,以及多Series与ChartArea的协同配置,帮助开发者避免常见错误,实现稳定、高性能的数据可视化应用。

weixin_29313239的博客 365

华为OD机试 - 敌情监控 - 滑动窗口(Java 双机位C卷 200分)

说明 第一行第一个正整数5,表示敌人有5个营地,第二个正整数2,表示连续营地 的数量是2, 第3个正整数3, 表示后续会有3条查询的命令;接下来一行有 5个正整数,分别表示每个营地里开始的人的数,第1个营地开始有1个人,第 2个营地开始有2个人,第3个营地开始有2个人,第4个营地开始有3个人,第 5 个营地开始有3个人;第3条命令:Query 2 4 表示查询第2到第4个营地的总人数,结果:2+8=10 第一个输出是: 10,注意这里第3个营地人数在第2条命令中增加了6。第一行3个正整数:N K L。

学Java,找哪吒 765

Java图表开发-JFreeChart

 JFreeChart是开放源代码站点SourceForge.net上的一个JAVA项目,它主要用来各种各样的图表,这些图表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。组件下载地址:http://sourceforge.net/project/showfiles.php?group_id=15494/应用基于JAVA的图表开发,基

Efeilan的专栏 1万+

UE5实现物体高亮描边效果(含UE相关源码浅析)

UE5实现物体高亮描边效果

专注GIS开发 7335

JFreeChart展示柱状图和折线图的组合

笔者最近工作需要在Web前端展示统计图表(基于SSH架构),使用了JFreeChart和amchart两个控件,谈谈使用心得。         JFreeChart的最大好处是可以在Server端保存jpg图片,并且前端代码简单,各浏览器兼容性好,但是相对来说动态展示效果较差。Amchart则可以更好的展示动态性,但是缺点也很明显,前端代码复杂,不能保存server端图片。另外,chrome和f

林昊@mattlinsheep的专栏 5622

Centos 7 Linux 安装单机 Hadoop(HDFS):下载、安装、配置、测试

本文详细介绍了在 CentOS 7 系统上安装与配置单机 Hadoop(HDFS)的完整流程,涵盖 JDK 环境准备、Hadoop 安装包下载与部署、核心配置文件(core-site.xml、hdfs-site.xml 等)修改、SSH 免密登录设置、HDFS 格式化及服务启动,并通过命令行与 Web 界面验证 HDFS 和 YARN 功能,适合 Hadoop 初学者快速搭建本地测试环境。

寒水馨 · 轻量级技术文档 · hanshuixin.org 3239

汽车电子RTOS--AUTOSAR OS

AUTOSAR OS(AUTomotive Open System ARchitecture Operating System)是AUTOSAR(汽车开放系统架构)标准中的一个重要组件,它是一个专门为汽车电子控制单元(ECU)设计的实时操作系统(RTOS)。AUTOSAR OS旨在提供一个标准化的软件平台,以促进不同供应商和汽车制造商之间的组件复用和协同开发,提高软件质量和降低成本。

MHD0815的博客 1800

用cewolf+jFreeChart 开发WEB 图形报表

在使用cewolf 之前,首先来熟悉一下jFreeChart 。这里分三部分来介绍 jFreeChart 。第一部分介绍jFreeChart产生 图形的流程及相关的重要的类;第二部分介绍四种常用的报表图(饼图、柱状图、折线图、时间序列图);第三部分 介绍在图形中增加Item Lable 。 jFreeChart 的版本是jfreechart-1.0.0-pre2(1) cewolf 的最...

makao45683968的博客 217

基于51单片机设计的花样流水灯设计

花样流水灯是一种常见的LED灯效果,通常由多个LED灯组成,通过控制每个LED灯的亮灭顺序和时间,实现花样流水灯的效果。在51单片机中,可以使用定时器和端口控制来实现这一效果。

3433

jfreechar

一、简介     WW 的发展使得基于因特网的应用程序不再局限于静态或者简单的动态内容提供。传统的一些以软件包形式发布应用程序例如报表系统等都在逐渐搬到因特网上。但是这两者之间有着天壤之别,虽然对于数据获取、业务处理等方面基本类似,但是最大的差别在于用户界面。为了能在web浏览器上显示要求用户界面使用 HTML以及图片的方式来展现数据,而传统的一些利用操作系统本身的控件来开发的用户界面无法适应琳琅...

liangshaln的博客 145

beegfs源码分析

BeeGFS的客户端是由一个内核模块和两个系统服务组成的,这里咱们主要分析内核模块。由于BeeGFS的目录树解析,是在父目录DEntry里找子目录或文件DEntry,逐级迭代完成的,所以在Mount文件系统时,须要从管理节点获取根元数据节点的ID,而后再向根元数据节点查询根目录的DEntry的信息,为后续的目录解析打下基础。获取类似/data/beeond/data/dentries/38/51/root/#fSiDs#/文件fileId的父路径。1.1 FileID的生成。Session网络消息。

wfzy的博客 1914

【数据集】中国2003年至2022年全天空每日气温数据集

中国2003年至2022年全天空每日气温数据集

WW、forever的博客 604

使用 JFreeChart来创建基于web的图表

一、JFreeChart项目简介 JFreeChart是开放源代码站点SourceForge.net上的一个JAVA项目,它主要用来各种各样的图表,这些图 表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及 一些仪表盘等等。这些不同式样的图表基本上可以满足目前的要求。为了减少篇幅本文主要介绍前面 三种类型的图表,读者可以触类旁通去开发其他样式的图表。下面几个

键者天行 1万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

用JFreeChart创建基于Web的图表

WWW的发展使得基于因特网的应用程序不再局限于静态或者简单的动态内容提供。传统的一些以软件包形式发布应用程序例如报表系统等都在逐渐搬到因特网上。但是这两者之间有着天壤之别,虽然对于数据获取、业务处理等方面基本类似,但是最大的差别在于用户界面。 为了能在web浏览器上显示要求用户界面使用HTML以及图片的方式来展现数据,而传统的一些利用操作系统本身的控件来开发的用户界面无法适应琳琅满目的客户端,因此

飘逸软件技术信息服务网 998

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

使用JFreeChart在web中绘制图表

用JFreeChart绘制图表,可以绘制二维柱状图、三维柱状图、折线图、以及饼图,网上也有很多关于JFreeChart绘制图像的源码,但是还是需要自己去总结一下这个过程。          对于图表并不陌生,office word中我们对数据进行分类汇总,最后在让我们自己把分类汇总的内容生成一个图表的样式。而在java web开发中,我们又一次遇见了,对于图表的汇总可选方案有多种,在这里使用的是

Xinghf 7099

java web 图表_使用 JFreeChart 来创建基于 web 的图表

使用 JFreeChart 来创建基于 web 的图表刘冬2003 年 9 月 08 日发布JFreeChart 项目简介JFreeChart 是开放源代码站点 SourceForge.net 上的一个 JAVA 项目,它主要用来各种各样的图表,这些图表包括:饼图、柱状图 ( 普通柱状图以及堆栈柱状图 )、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。这些不同式样的图表基本上可以满足目前...

weixin_29147347的博客 381

使用JFreeChart创建图表

JFreeChart项目简介 JFreeChart是开放源代码站点SourceForge.net上的一个JAVA项目,它主要用来各种各样的图表,这些图表包括:饼图、柱状图(普 通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。这些不同式样的图表基本上可以满足目前的要求。为了减少篇幅本文主 要介绍前面三种类型的图表,读者可以触类旁通去开发其他样式的图表。下面几个是

pippo的专栏 2191

使用 JFreeChart来创建基于web的图表(转自IBM)

WWW的发展使得基于因特网的应用程序不再局限于静态或者简单的动态内容提供。传统的一些以软件包形式发布应用程序例如报表系统等都在逐渐搬到因特网上。但是这两者之间有着天壤之别,虽然对于数据获取、业务处理等方面基本类似,但是最大的差别在于用户界面。为了能在web浏览器上显示要求用户界面使用HTML以及图片的方式来展现数据,而传统的一些利用操作系统本身的控件来开发的用户界面无法适应琳琅满目的客户端,因此在

wiregate的专栏 4717
上一篇: 简化JFreeChart创建WEB图表
下一篇: Sun发布开放源代码和商用Java工具中文版
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值