JfreeChart与struts2结合生成直方图

【JFreeChart】JFreeChart—输出柱形图 如何将数据以柱状图的形式显示出来? 实现过程: 1、获取数据; 2、根据工厂模式生成图形对象,通过获取该图形对象,来进一步获得该图形对象内部的小对象,并对它们的字体等进行设置; 3、将图形放到面板中; 4、构建一个方法,将放置了图形的面板返回出去,当需要使用该面板时只需调用该方法即可(封装); 5、创建一个窗体,将面板放到该窗体中进行显示; 柱形图比饼状图复杂,生成的图标数据需要有两... 阅读详情

(1)生成对应的数据源DataSet,如直方图CategoryDataset、折线图CategoryPlot

(2)使用ChartFactory生成与DataSet相对应的Chart同时生成X/Y轴的数字

(3)设置Chart的X轴,Y轴上字体格式

(4)生成报表。

具体步骤如下:

(1) 生成对应的DataSet

private staticCategoryDataset getDoctorDataSet() {

             //创建一个3D直方图DefaultCategoryDataset数据源

             DefaultCategoryDataset dataset =new DefaultCategoryDataset();

             List<Map<String,Object>>list = new ArrayList<Map<String,Object>>();

            //在此处通过调用系统Service层与数据库的连接,将数据转化为Map然后放入List中

             for(Map<String,Object> m:list){

                    Object cs =m.get("cs");

                    //将数据源添加到DataSet中

dataset.addValue(Integer.parseInt(cs.toString()),doctor.get("doctorname").toString(),m.get("st").toString());

             }

             return dataset;

      }

(2)  使用ChartFactory生成报表

JFreeChart chart =ChartFactory.createBarChart3D("部门统计", //图表标题

                           "", // 目录轴的显示标签

                           "次数", //数值轴的显示标签

                           dataset, // 数据集

                           PlotOrientation.VERTICAL,// 图表方向:水平、垂直

                           true,// 是否显示图例(对于简单的柱状图必须是 false)

                           false, // 是否生成工具

                           false // 是否生成 URL 链接

                           );

(3 )  设置X轴,Y轴显示编码

public static voidsetBar3DFont(JFreeChart chart) {

                    CategoryPlot plot =chart.getCategoryPlot();//设置标题字体

                    chart.getTitle().setFont(newFont("宋体", Font.PLAIN, 14));       //Y轴

                    NumberAxis numberaxis =(NumberAxis) plot.getRangeAxis();//X轴

                    CategoryAxis domainAxis =plot.getDomainAxis();

                    /*------设置X轴坐标上的文字-----------*/

                    domainAxis.setTickLabelFont(newFont("sans-serif", Font.PLAIN, 11));

                    /*------设置X轴的标题文字------------*/

                    domainAxis.setLabelFont(newFont("宋体", Font.PLAIN, 14));

                    /*------设置Y轴坐标上的文字-----------*/

                    numberaxis.setTickLabelFont(newFont("sans-serif", Font.PLAIN, 12));

                    /*------设置Y轴的标题文字------------*/

                    numberaxis.setLabelFont(newFont("黑体", Font.PLAIN, 12));

                    /*------这句代码解决了底部汉字乱码的问题-----------*/

                    chart.getLegend().setItemFont(newFont("宋体", Font.PLAIN, 12));

             }

      }

(4)   报表生成

为了生成报表,package 除了继承struts-default还需要继承jfreechart-dafault,在struts.xml中配置如下:

<package name="default" extends="struts-default,jfreechart-default">

<actionname="jfreeChart" class = "cn.test.JfreeCharAction" method= "{1}">

                    <resultname="success" type="chart"><!—在此type必须是chart-->

                           <paramname="width">800</param><!—设置生成图片宽度-->

                           <paramname="height">400</param><!—生成图片高—>

                    </result>

</action>  

</package>


jfreechart柱状图 这是一份源代码,下载导入就能使用,不用改任何东西;不过没有连接数据库,其实也很简单,不懂的话我博客有教程 立即下载

相关推荐

01-SA8155 QNX 虚拟机Hypervisor

Hypervisor运行在Host OS操作系统上,其他操作系统均在Hypervisor上运行。:Hypervisor直接运行在硬件上,操作系统在Hypervisor之上运行。终止(关闭):echo control 0 dev/vmm。路径:qnx_ap/AMSS/platform/vm/resources/关闭/终止 qvm(GVM):slay -s SIGQUIT qvm。", //host PVM --- 主机。不直接操作/dev/vmm 实现关闭,启动vm。

静虚待令,有物混成 1万+

JFreeChart 使用 一 直方图之柱状图-高级特性

本节内容主要讲述柱状图的一些高级特性。 1、简单定制之修改背景颜色 调用JFreeChart和CategoryPlot类方法可以进行一些简单的直方图表外观的修改。例如,改变图表和区域的背景颜色代码如下: chart.setBackgroundPaint(Color.white); CategoryPlot plot = (CategoryPlot) chart.getPlot()...

weixin_30568715的博客 234

VSCode配置C/C++开发环境:从零安装MinGW-w64并运行第一个C程序

在Windows系统上搭建C语言开发环境时,很多初学者混淆编辑器、编译器与调试器的分工,导致配置过程屡屡受挫。理解VSCode作为轻量级编辑器的定位,以及MinGW-w64提供的gcc编译器在源码编译中的核心作用,是顺利完成环境配置的关键。环境变量的正确设置直接影响gcc命令能否全局调用,而C/C++插件则赋予编辑器语法高亮与智能提示能力。通过安装VSCode、配置MinGW-w64、安装插件、汉化界面并运行一个最简单的hello.c程序,就能系统掌握这套开源工具链的完整工作流。无论是用于课程学习、算法练习

weixin_42531923的博客 533

JAVA用jfreeChart生成正态分布图(频率直方图+曲线)

jfreechart画正态分布图

qq_47103654的博客 844

最全中文停用词表(可直接复制)

最全的停用此表整理 词表名 词表文件 中文停用词表 cn_stopwords.txt 哈工大停用词表 hit_stopwords.txt 百度停用词表 baidu_stopwords.txt 机器智能实验室停用词库 scu_stopwords.txt 以上停用词表链接:https://github.com/goto456/stopwords 以下是我常用的1893个停用词,可直接复制 ! " # $ % & ' ( ) * + , - -- . .. ... ....

dilifish的博客 12万+

逐飞vs龙邱:英飞凌miniwiggler仿真器硬件接口差异全解析(附拆机对比图)

本文通过拆解对比逐飞与龙邱两家厂商的英飞凌miniwiggler仿真器,详细解析了其硬件接口的核心差异。重点分析了Type-C接口的取舍、DAP调试协议(SWD)的支持、电源设计(跳线帽vs拨码开关)以及工艺用料,为嵌入式开发者与智能车竞赛选手提供了清晰的选型参考和实际应用建议。

weixin_29189003的博客 113

JFreeChart 使用一 直方图之简单柱状图

JFreeChart创建直方条形图包括了:堆栈式直方条形图、时序数据的条形直方图、柱状图等。 本文先对直方图进行介绍。了解简单柱状图的创建过程。 1、概述 直方条形图常常被用来显示表列数据。如下表,为一个简单的两行、三列数据。 Colnums1 Colnums2 Colnums3 Row1 ...

weixin_30834783的博客 263

使用LabVIEW创建和分析柱状图:从基础绘制到高级数据分析的完整指南

LabVIEW,全称为Laboratory Virtual Instrument Engineering Workbench,是由美国国家仪器公司(National Instruments, NI)开发的一款图形化编程语言。自1986年首次推出以来,LabVIEW凭借其强大的数据采集、分析和控制能力,在工程、科研、教育等领域得到了广泛应用。与传统的文本编程语言不同,LabVIEW采用了图形化编程方式,用户通过连接不同的函数节点来实现复杂的逻辑和算法。

qq_38334677的博客 776

jfreeChart柱状图参数设置

plot.setRangeGridlinesVisible(true);    // 虚线色彩    plot.setRangeGridlinePaint(Color.gray);    // 数据轴精度    NumberAxis vn = (NumberAxis) plot.getRangeAxis();    // 设置最大值是1    vn.setUpperBoun

【灿烂星空】—— 带你领略IT魅力 6293

避坑指南!YOLO26模型导出/推理常见问题,99%的开发者都踩过

版本锁定:Ultralytics=8.4.2、OpenVINO=2024.0.0、Python=3.10,版本不一致是80%问题的根源;参数对齐:训练/导出/推理的imgsz、归一化、坐标映射必须完全一致,差一步就出错;算子统一:避免自定义算子,优先用YOLO26原生算子(C3k2/PSABlock),确保推理引擎兼容;分步验证:导出后先校验ONNX/IR模型→单图片推理→RTSP流推理→72小时稳定性测试,一步过易踩坑;工业级测试。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 510

学Simulink——基于新型动力与推进系统的场景实例:混合动力无人机的续航能力优化

通过本次 Simulink 仿真,你已掌握:✅混合动力系统架构设计✅内燃机、电机、电池联合建模✅三种能量管理策略(规则型、功率跟随、优化型)✅续航能力仿真与对比分析✅参数调优与优化方法核心收获混合动力是突破续航瓶颈的有效路径能量管理策略(EMS)决定系统效率电池SOC管理是关键Simulink 支持复杂多能源系统的协同仿真掌握混合动力无人机技术,你将具备设计长航时巡检机、应急通信平台、边境巡逻系统的能力。

xiaoheshang_123的博客 101

struts2整合jfreeChart之简单例子

[b]以下是在jsp页面产生一个直方条形图,至于其他的图,只要改动下Action中产生图的代码即可,反正只要返回一个JFreeChart对象即可。。。。此方法就不需产生临时图,更加不存在还要记着该何时清除临时图片的问题。。。稍微修改下代码,则可是针对一次请求则动态产生图表,应该也就不存在网上大家讨论的并发问题了。。。,纯属个人见解,欢迎指正~~共同进步。。。。[/b] 1、搭建环境所需jar包 ...

zhourrr1234的专栏 185

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

JfreeChart学习总结 整理中。。。

[color=red]五.开始开发[/color] 前面的其实都是废话,呵呵。对JFreeChart的操作其实可以分成6步骤 [list=1] [*]引入生成图表所需的Jar包 [*]创建绘制图表所需要的数据集 [*]创建JFreeChart的实例 [*]设置图表的生成格式及文件名 [*]设置图表的浏览路径 [*]在HTML中,调用显示图表 [/list] [code="jav...

VirgooooS 186

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

NTscan扫描工具

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

JFreeChart—— 柱状图

1. 依赖包 2. XML 文件配置 <servlet> <servlet-name>DisplayChart</servlet-name> <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> &l...

时光·漫步的博客 5475

JFreeChart: 基本柱状图

 2.1. 简单柱状图  首先为柱状图准备数据,柱状图必须使用CategoryDataset,这里我们使用DefaultCategoryDataset。DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(100, "Spring Security", "Jan"); dataset.addValue(200, "jBPM 4", "Jan"); dataset.addValue(300, "Ext J

originalCsdn的专栏 7969

用JFreeChart画统计分析柱状图(成功版)

用JFreeChart画统计分析柱状图(成功版) [ 2006-6-19 17:38:00 | By: blueroc ]  ...

男人,就应该对自己狠一点! 631

(1)JfreeChart之柱状图

(1)JfreeChart之柱状图工作中要实现Word文档导出功能,并且包含数据统计图,我当时就理解为带图片的Word文档导出功能,于是想到利用Itext操作Word文档使用Jfreechart创建数据统计图,然后将数据统计图添加到Word文档中。 在这里给大家分步骤讲解下,首先给大家从数据统计图讲解。我想大家都知道Jfreechart的强大功能这里不一一介绍,只讲具体实现。1、JfreeChar

Alitownlet的专栏 6155

jfreechart生成直方图,横坐标轴可旋转90°,带美化

使用jfreechar生成直方图,横坐标标签可90°翻转

weallikdaytime的博客 1150

08 10 Struts 2.x结合JFreechart绘图

文章目录1 使用JFreeChart绘制一个图形2 在Struts 2.x中应用JFreeChart组件 在很多的系统之中,数据的统计结果报表时经常会出现的功能,但是在现在的开发之中,大部分都会基于HTML5的Canvas绘图功能完成,如果是直接绘图,那么基本上都很麻烦,所以可以使用大量的第三方开发包,在很早以前就存在有一个Java可用的统计图的工具——JFreeChart,是一个免费的绘图工具。 1 使用JFreeChart绘制一个图形 下面就使用此组件绘制一个最简单的图形显示。 范例:基本绘图 pack

weixin_43762330的博客 239

JFreeChart生成柱状图实例

JFreeChart生成柱状图实例 简单例子                    org.jfree.chart.JFreeChart,                  org.jfree.chart.plot.PlotOrientation,                  org.jfree.chart.servlet.ServletUtilities,

loonie51的专栏 2057

jfreechart 画柱状图.(与参数实例)

关于柱状图大部分参数都写了.直接上代码 package liu.cn.ixj.util; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartUtils; import org.jfree.chart.JFreeChart; import org.jfree.chart.axis.*; import org.jfr...

刘瑾炎 2772
上一篇: Java Mail实现邮件发送
下一篇: Struts2使用JXL导入/导出数据
AS_MSDN
博客等级 码龄15年 0粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值