小试jfreeChart

程序代码 程序代码

<%@ page contentType="text/html;charset=GBK"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="org.jfree.chart.title.TextTitle" %>
<%@ page import="org.jfree.chart.*" %>
<%@ page import="java.awt.Font" %>
<%@ page import="org.jfree.chart.plot.*" %>
<%@ page import="org.jfree.chart.servlet.ServletUtilities" %>
<%@ page import="org.jfree.chart.entity.StandardEntityCollection" %>
<%@ page import="org.jfree.chart.renderer.category.BarRenderer3D" %>
<%@ page import="org.jfree.data.category.DefaultCategoryDataset" %>
<%@ page import="org.jfree.data.general.DefaultPieDataset" %>
<%@ page import="org.jfree.chart.renderer.category.BarRenderer3D" %>
<html>
<head><title>Jfree图表</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
</head>
<body>
<%

//设置生成饼状图
    int i=0;
    String[] area={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"};
    try{
        Class.forName(" oracle.jdbc.driver.OracleDriver").newInstance(); 
        String url="jdbc: oracle:thin:@amd02:1521:orcl"; 
        Connection conn= DriverManager.getConnection(url,"lucky","lucky"); 

        Statement sql=conn.createStatement();
        ResultSet rs=sql.executeQuery("select * from chart");

        PrintWriter pw=null;
        DefaultPieDataset dataset=new DefaultPieDataset();
        //设置数据源
        while(rs.next()){
          String dq=rs.getString("dq");

           dataset.setValue(area[i],Integer.parseInt(dq));
         
          //添加数据,参数包括名称和数值
           i++;
        }
        rs.close();
        sql.close();
        conn.close();
       
        JFreeChart chart=ChartFactory.createPieChart("饼型图",dataset,true,true,true);
        chart.setTitle("短信统计图");//设置图片标题
        ChartRenderingInfo info=new ChartRenderingInfo(new StandardEntityCollection());
        String filename=ServletUtilities.saveChartAsJPEG(chart,600,400,info,session);
        //设置生成图片,包括图片的大小,长度是600,宽是400
        session.setAttribute("file_name1",filename);
        String URL= request.getContextPath() + "/servlet/DisplayChart?filename=" + filename;
        session.setAttribute("file_url1",URL);

        }
        catch(SQLException e){
          out.println(e);
       }
        


      %>

<%

//生成柱状图
        try{
         int j=0;
        Class.forName(" oracle.jdbc.driver.OracleDriver").newInstance(); 
        String url="jdbc: oracle:thin:@amd02:1521:orcl"; 
        Connection conn= DriverManager.getConnection(url,"lucky","lucky"); 
         Statement sql=conn.createStatement();
         ResultSet rs=sql.executeQuery("select * from chart");
         DefaultCategoryDataset dataset=new DefaultCategoryDataset();//设置数据源

         while(rs.next()){
         dataset.addValue(Integer.parseInt(rs.getString("dq")),"学校",area[j]);
         //添加数据,参数包括名称和数值
         j++;
         }

         JFreeChart chart1=ChartFactory.createLineChart("统计图","月份","短信数量",
                dataset,PlotOrientation.VERTICAL,false,false,false);
         
         //设置图表的背景颜色
          //chart1.setBackgroundPaint(Color.white);
         CategoryPlot plot=chart1.getCategoryPlot();
         plot.setBackgroundAlpha(0.3f);
         plot.setForegroundAlpha(1.0f);
         //自定义标题
         Font font = new Font("黑体",Font.CENTER_BASELINE,20);    
         TextTitle title = new TextTitle(" 我的自定义标题");    
         title.setFont(font);     
         chart1.setTitle(title);    
  
         BarRenderer3D renderer1=new BarRenderer3D();
        
         renderer1.setItemMargin(80);//设置每个柱子之间的距离
         //plot.setRenderer(renderer1);//让上面对柱子的设置生效
        String filename=ServletUtilities.saveChartAsJPEG(chart1,600,400,session);
         //生成图片,包括图片的大小

         session.setAttribute("file_name2",filename);
         String URL=request.getContextPath()+"/servlet/DisplayChart?filename="+filename;

         session.setAttribute("file_url2",URL);



         }catch(SQLException e){}

%>
<center><img src="<%=session.getAttribute("file_url1")%>" width=600 height=400 border=0 usemap="#<%=session.getAttribute("file_name1") %>">

<img src="<%=session.getAttribute("file_url2") %>" width=600 height=400 border=0 usemap="#<%=session.getAttribute("file_name2")%>"></center>

</html>

一个已经搭好的ssm框架下的JFreeChart项目 包含SSM的环境配置和里面的增删查改功能,还有JFreeChart的柱状图,饼状图和折线图的实现。JFreeChart已经改成SSM的形式,实现了controller,service的分层,还把复杂的字体设置代码提取到了utils里面,使得controller层代码量大大减少。 立即下载

相关推荐

Spring+JFreeChart 自动生成统计图

NULL 博文链接:https://chaoyi.iteye.com/blog/2173710

tomcat5下jfreechart和spring冲突报错

tomcat5用jfreechart做图表,报错如下:13:20:43,109  WARN XmlBeanDefinitionReader:47 - Ignored XML validation warningorg.xml.sax.SAXParseException: URI was not reported to parser for entity [document]    at gnu.x

胡矣 1117

从Halcon到数学原理:3D点云平面拟合与距离计算的5个关键陷阱

本文深入剖析了3D点云平面拟合与点到平面距离计算中的五个关键陷阱,包括无限与有限平面的距离歧义、法向量方向随机性、拟合算法选择、点云密度不均以及实际部署中的性能衰减。文章穿透Halcon等工具的操作层面,回归数学原理与工程实践,为工业视觉和三维测量领域的高精度应用提供关键指导。

fire9的博客 451

img th:src传输图片

<img th:src="@{/upload/{id}(id=${goods.getGPicture()})}" width="100px" />

weixin_44575964的博客 3115

关于ADS重新安装失败的解决方案

ads卸载安装license被锁无法修改导致安装最后没有证书

weixin_47103290的博客 9704

金蝶云星空API实战:从零到一,用Postman打通业务数据流

本文详细介绍了如何使用Postman调试金蝶云星空API,从创建第三方应用到实战调试技巧,帮助开发者快速打通业务数据流。文章重点讲解了API配置的关键细节、常见问题排查方法以及自动化测试方案,提升开发效率与准确性。

weixin_33712987的博客 519

jfreechart 整合sturts2牛刀小试

一.增加的jar包 struts2-jfreechart-plugin-2.1.6.jar 在struts2的相应jar包中找 jcommon-1.0.23.jar 在jfreechart官网中找 jfreechart-1.0.19.jar 在jfreechart官网中找 ...

weixin_30267785的博客 106

PyTorch深度学习实战(2)——PyTorch基础

PyTorch 是广泛应用于机器学习领域中的强大开源框架,因其易用性和高效性备受青睐。在本节中,将介绍使用 PyTorch 构建神经网络的基础知识。首先了解 PyTorch 的核心数据类型——张量对象。然后,我们将深入研究用于张量对象的各种操作。PyTorch 提供了许多帮助构建神经网络的高级方法及组件,并提供了利用 GPU 更快地训练神经网络的张量对象。

盼小辉丶的博客 5万+

小试JFreeChart柱状图和饼状图

   闲来无事,就学学报表技术,目前找到一款开源JFreeChart,遂写下最常用的柱状图与饼状图以作记录。   导入jar包:   1、jfreechart-1.0.14.jar 2、jcommon-1.0.17.jar   其他不解释 直接看代码   package jfreechart; import java.awt.Font; import java.io.F...

hamber 152

智能水下机器人设计: 基于MATLAB的水下机器人动力学建模和控制系统设计,包括水下环境感知、路径规划和任务执行等

智能水下机器人是指能够在水下自主完成各种任务的机器人,例如探测、勘察、救援等。它具有广阔的应用前景,可用于海洋环境监测、水下考古、海上作业等领域。基于MATLAB的水下机器人设计可以为科研人员和工程师提供强大的建模和仿真工具,帮助他们设计更智能、更高效的水下机器人。智能水下机器人是未来海洋科技发展的重要方向,它将为海洋科学研究、水下考古和海上作业等领域带来新的机遇。MATLAB是一种功能强大的数学和科学计算软件,它可以为智能水下机器人设计提供强大的工具和支持。

走向CTO的路上... 962

MATLAB 基于 Baker 映射和 Logistic 混沌序列的图像加解密实现

图像加密是信息安全领域的重要研究方向,在数字版权保护、隐私保护等领域有着广泛应用。本文将介绍基于 MATLAB 的 Baker 映射和 Logistic 混沌序列的图像加解密算法,该算法利用混沌系统的初值敏感性和伪随机性,能够有效地对图像进行加密和解密。基于 Baker 映射和 Logistic 混沌序列的图像加解密算法是一种有效的方法,可以应用于数字版权保护、隐私保护等领域。MATLAB 提供了强大的工具和函数,可以方便地实现该算法。

走向CTO的路上... 937

使用jFreeChart实现web实时设备状态的图形化监控之三:使用jPcap抓取网络数据包小试...

抓包前,首先要编写实现了PacketReceiver接口的类,即数据包处理器,由与抓包时,对应某个网络接口的JpcapCaptor对象会阻塞,所以我们将每个网卡上得到的对应的JpcapCaptor对象放到一个独立线程中运行;TestPacketReceiver是个数据包解析器,本例中我们只是简单打印出收到的数据包类型及关键参数,阅读如下代码建议参照jPcap的在线文档(http://netrese...

蓝杰 318

大数据架构中的数据治理:元数据管理与数据血缘追踪实践

本文将聚焦大数据架构中数据治理的两大核心支柱——元数据管理与数据血缘追踪元数据管理的目标、类型与实施步骤(从需求分析到工具落地);数据血缘追踪的技术实现(静态解析、动态捕获、混合方案)与应用场景;如何将两者结合,构建完整的数据治理体系,并通过真实案例展示落地效果。元数据管理:定义了业务/技术/操作元数据,讲解了工具选型(如Apache Atlas)、采集(Hook/API)、存储(关系库+图数据库)、应用(数据发现、质量监控);数据血缘追踪。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 868

jfreechart饼图

[code="java"]早在公司实习的时候就有调研过JFreeChart,那会也只是大概的研究一下没怎么的深入,其牛B的特效让我记忆犹新,这几天突然有很强的求胜欲望很想来把它搞懂. 一. 首先JFreeChart是JFreeChart公司在开源网站SourceForge.net上的一个项目,报表解决工具 . 我们可以从jfree官方网站上获取最新版本(最新的版本是1.0.13)和相关资料(...

切躁切勇,伏枥藏锋 117

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

JFreeChart最佳实践:3D饼图

早在公司实习的时候就有调研过JFreeChart,那会也只是大概的研究一下没怎么的深入,其牛B的特效让我记忆犹新,这几天突然有很强的求胜欲望很想来把它搞懂。  一、首先JFreeChart是JFreeChart公司在开源网站SourceForge.net上的一个项目,报表解决工具。我们可以从jfree官方网站上获取最新版本(最新的版本是1.0.13)和相关资料(但花美金才能获取)。 获

junmoxie的专栏 1388

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

使用jFreeChart实现web实时设备状态的图形化监控之二:jPcap使用简介

1.jpcap说明与安装   JAVA语言虽然在TCP/UDP传输方面给予了良好的定义,但对于网络层以下的控制,却是无能为力的。JPCAP扩展包弥补了这一点,jPcap是一个可以让java工作在链路层的类库;当然,它底层还是使用了本机API通过Jini调用,在javaAPI中得到数据。JPCAP实际上并非一个真正去实现对数据链路层的控制,而是一个中间件,JPCAP调用wincap/libpcap,...

蓝杰 457

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

java实现给图片添加水印

周末在家上围脖,看到sina围脖上图片都有水印,想到Java有专门Image的处理包,同样应该可以实现水印功能,查了资料小试下来发现java实现水印还是非常方便的,水印可以是图片或者文字,而且还可以选择不同的角度旋转呢,以后有需要可以写个代码批量处理自己的图片了。   本门目

dy_Smile的专栏 2万+

JFreeChart与springMVC 或servlet整合

第一步导入jar包jcommon-1.0.23.jar jfreechart-1.0.19.jar第二步 在web.xml中配置JFreeChart的分发器<servlet> <servlet-name>DisplayChart</servlet-name> <servlet-class>org.jfree.chart.servlet.DisplayChart</se

beloveddarling的博客 1754

JFreeChart spring web开发

在web.xml中加入               DisplayChart         org.jfree.chart.servlet.DisplayChart                 DisplayChart         /img 在方法中写: @RequestMapping(value = "/test", produces = "

帅蒲 398

SpringMVC JFreeChart 实例

配置文件:web-context.xml 预算对比分析 budgetContrastiveChartVeiw java代码: public class BudgetContrastiveJFreeChartController extends PlanAbstractController { @Override protected ModelAnd

loonie51的专栏 2389

springboot+jfreechart实现折线图只需一个类

springboot那些内容我就不说了哈,自己搭建好一个springboot加入我的代码就可以了用啦 先上个图 先导入1个依赖 <dependency> <groupId>org.jfree</groupId> <artifactId>jfreechart</artifactId> <version>1.0.19</version> </dependency> 在你.

qq_51001054的博客 3376

springmvc集成jfreechart

JSP文件   "> servlet.xml ChartViewResolver public class ChartViewResolver extends AbstractCachingViewResolver{ protectedfinal Log

u010676959的专栏 2200
上一篇: 标准的hibernate存取blob和clob字段的方法
下一篇: 小试jfreeChart
spring028
博客等级 码龄19年 4粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值