[Java报表软件—技术知识]动态图表 |
与静态图表不同,动态图表的核心在于数据和图表类型可随条件的不同即时展现,即除了能展现一般的静态图表内容之外,动态图表还有很好的交互性。动态图表实现原理与动态报表类似,是基于参数传递或数据过滤实现的,本文介绍的是基于数据参数传递原理的动态图表。
动态图表数据
用户希望根据条件的不同,显示的图表不同,这是动态图表产生的最初推动力。如下图,选择年份与月份条件,图表中显示满足条件的数据,从而实现动态图表:500)this.width=500'>
实现思路
根据参数条件动态改变图表的数据来源:
若图表数据来源于数据集,那么可以通过数据源参数来动态改变图表的数据;
若图表数据来源于单元格,那么可以通过报表参数,并设置过滤来改变图表的数据,该节就以此为例。
示例
1 准备数据
新建工作薄,添加数据集ds1,SQL语句为SELECT Year(订购日期)as 年, month(订购日期)as 月, 货主省份, 应付金额 FROM [订单] 。
2 定义参数
我们根据选择的年份与月份来动态改变图表,定义3个报表参数:报表参数Year:年份,默认值为2010;报表参数Start:起始月份,默认值为1;报表参数End:结束月份,默认值为6。
参数界面设计如下:500)this.width=500'>
3 表样制作在单元格中统计出各省某年若干月的销售额情况并汇总,如下图:500)this.width=500'>
数据列设置如下:单元格 数据集 数据列 属性A3 ds1 货主省份 设置过滤条件:年 等于$YearB3 ds1 年 默认C2 ds1 月 从左到右扩展,设置过滤条件:月 大于或等于$Start and 月 小于或等于$EndC3 ds1 应付金额 汇总-求和
根据参数值的不同,单元格中统计出来的数据不同,以单元格作为数据来源,图表显示的数据也不同,从而实现动态图表。
4 插入图表
合并一片单元格如上图,右击单元格元素>插入图表,选择柱形图,点击确定。
5 图表类型设置
柱形图种类选择三维柱形图,如下图:500)this.width=500'>
6 图表数据设置
图表数据来源于单元格数据分类轴为地区,系列名称为月份,系列值为销售额,如下图:500)this.width=500'>
点击保存,一张根据参数的改变动态改变的图表便制作完成了。
7 动态标题设置
给图表设置一个动态的标题,选中图表,选择图表属性表-样式>标题,点击公式按钮,公式为=$Year+”年度”+$Start+”—”+$End+”月销售额统计”,根据参数的不同显示动态标题。
500)this.width=500'>
最后报表主体中模板样式如下图:500)this.width=500'>
8 保存与预览
保存模板,点击分页预览,效果如上。模板效果在线查看请点击Dynamic.cpt已完成模板可参考%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Chart\Dynamic.cpt。
图表动态展示
FR图表在BS下可以动态显示(只有二维图表才有动态效果,三维图表无此功能),如下图:500)this.width=500'>
设置方法
二维图表默认就开启了“动态展示”,单击选中图表,在设计器右侧图表属性表中选择特效,点击交互属性,可将动态展示设置为关,如下图:500)this.width=500'>
原文转载自:FineReport官网:http://www.finereport.com/knowledge/chart/dynamiccharts.html
|
|
|

.: 公告
本博客提供详细的java报表软件的制作过程,发布java报表软件的版本更新信息,并适时对国内主流报表软件进行功能比较。 |
|
« | July 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | |
|
.: 我的分类(专题)
|

.: 最新日志
.: 最新回复
|

blog名称:Java报表软件 日志总数:357 评论数量:69 留言数量:0 访问次数:1206639 建立时间:2006年4月16日 |
|

.: 留言板
|

.: 链接
|

|