FineReport中图表排序主要分为单系列(分类)图表排序和多系列分类图表排序两种,图表排序的实现和数据类排序的原理类似,以图表所代表的的数据大小为根本依据,在此基础上延展开来一系列的排序标准。以下主要是实现这两类图表特效的制作方法:
单系列(分类)图表排序
单系列(分类)图表排序适用于使用图表时,图表能够根据数据的大小进行显示。单系列(分类)图表排序则制作以柱形图为例,希望所有柱子能够根据数据的大小从高到低或者从低到高进行排序,如下图所示,此时要如何实现呢?
单系列图表排序效果实现思路
图表的默认是根据系列进行排序显示的。
若图表数据源是来自单个数据集,那么可以直接使用数据集中的排序进行排序,然后设置图表数据源为数据集数据;若图表数据源是通过单元格计算出来的,则可以使用扩展后排序进行排序,然后设置图表数据源为单元格数据即可。
单系列图表排序详细步骤
下面我们以一个简单的示例分别介绍下如何实现上图效果。
1、图表数据源为数据集数据
打开模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Chart\Logchart.cpt
修改数据集
将原来的数据集修改为按照成本价进行降序排序,则SQL语句为:SELECT * FROM [产品] where 类别ID= 1 order by 成本价 desc
效果查看
点击分页预览,可以看到柱子从高到低进行降序排序了,如上效果图。
2、 图表数据源为单元格数据
打开模板
打开模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Chart\Logchart.cpt。
修改模板
按照下图将对应的数据列拖入到单元格中
排序设置
右击A2单元格,选择扩展属性,在单元格属性面板中设置扩展后排序为降序,并在公式中输入B2。
数据集设置
按照下图设置数据集:
隐藏单元格
将单元格中的数据隐藏起来,选中第一行和第二行,右击,选择隐藏行即可。
效果查看
点击分页预览,可以看到柱子从高到低进行降序排序了。其他的图表类型,如条形图和饼图,做类似设置可达到同样的图表排序。
多系列分类图表排序
如下图,数据库中有一张表,每个分类下面的系列均已经按照特定的顺序(系列汇总,即各个系列的流量总和降序排列)排列好,并且有些分类下的数据缺省。
用上述表中数据制作一个数据集数据源柱形图,如下图,会看到图例的排序与数据库中数据不一致,数据库中每个分类下的系列排序是一样的(缺省系列不参与排序),而图表中图例顺序却是按照从数据库中读取系列(port)字段的顺序排序的,如果第一个分类下的系列名称不缺省,那么图表图例顺序会显示正常(直接从第一个读到最后一个,显示完全),如果第一个分类下面的系列数据有缺省,所以图例排序会先显示该分类下有的系列,缺省的系列会显示在后面,就会打乱原来的顺序:
那么该如何实现,在系列缺省的状况下还保持图表图例顺序与数据库中顺序一致呢?
多系列分类图表排序实现思路
使用单元格作为图表的数据源,在单元格中将数据重新排序,即形成一个交叉报表,横向和纵向表头分别是分类和系列,缺省的地方会自动显示为空,然后将系列重新排序即可。
实现示例
1 、单元格数据
如下图,将数据列拖曳至单元格中,形成交叉报表,并计算每个系列下的汇总流量值。要手动设置C15,也就是sum函数所在单元格的左父格,设为A15。
2、 单元格重新排序
选中图表系列所在单元格,也就是A15,在单元格属性表-扩展属性>扩展后中,选择降序排序,公式为=C15,如下图:
点击分页预览,会发现交叉表中系列名称又重新弄排好序了,如下图:
3、图表数据源
单元格数据制作好了,下面将单元格数据与图表进行绑定,也就是重新添加图表数据源,选中图表,在图表属性表-数据一栏中,数据来源选择单元格数据源。
点击分页预览,即可看到多系列分类图表排序效果。
相关推荐
【】java报表插件FineReport物流行业报表平台建设的解决方案【】js统计图表工具FineReport化繁为简搭建智能报销系统【】js统计图表工具FineReport实例:采购部报表数据决策平台【】农商行信息化建设过程中存在哪些...
对于一些特殊的模板,可能为了展示的更加丰富、全面会在一个页面放置很多图表。表格等内容。由于内容过多,超出了浏览器窗口的大小...这样我们就需要用到JS滚屏效果来解决,这里主要介绍在FineReport中的具体制作方法。
jQuery是一个快速的,简洁的JavaScript库,能让用户更方便地处理HTML documents、events,实现动画效果,方便地为网站提供AJAX交互,并且它兼容各种浏览器。因为FineReport报表解析后最终成为一个html页面,因此可以...
FineReport支持多种不同的导出方式,直接使用FineReport内置导出按钮可以非常快捷方便的来对各种格式的输出,但是我们在web页面集成中的时候,往往只想将报表内容嵌入到iframe中,而工具栏以及工具栏上的按钮都会...
报表开发工具FineReport中如何把报表放到网页中显示
报表开发工具FineReport 8.0版本中开放了部分图表js接口,很多小伙伴可能不知道它们的具体作用跟调用方法,根据我自己的使用总结,在本文中分享这部分可以实现的功能和具体接口。
报表开发工具FineReport中如何把报表放到网页中显示
动态列报表,使用参数控件联动筛选需要展示的列的数据,该资源包下包含了已经完成的模板和JS以及所使用的函数公式。
在日常使用地图过程中,通常会遇到地图标签,提示点等显示不满足我们的需求,需要进行JavaScript代码编写。本文主要利用FineReport的示例来讲述如何用JavaScript自定义地图标签。
图表制作软件FineReport中程序数据集传参使用解决方案扫描.pdf
在报表开发工具FineReport中,报表的执行过程大体可分为两步:1、报表计算;2、页面转换。
FineReport 丰富的图表功能可以实现各式各样的可视化展示效果,但面对一些复杂的、需要设计工具或编程语言实现的高级图形,也可以借助图表间的组合,实现出类似的效果。 外圈展示系列名称,鼠标拖拽可旋转外圈 内圈...
finereport格式化金额函数js中进行数字超大金额千位符格式化处理.docx
在MIS 系统的设计中, 报表输出是不可缺少的功能, FineReport 是一个非常不错的报表工具。研究了通过FineReport 设计动态列报表的技术要点。
本文主要讲述了在FineReport移动端中钉钉如何集成设计器的插件从而实现企业应用。
FineReport自学习题 V2 包括试题以及每一题对应的制作图表,可以对照制作相应报表。
报表工具FineReport中数学和三角函数
本案例资料包括已经完成的模板和SQL脚本,使用参数实现图表的轮播效果。适用于从事报表开发人员、模板应用广泛。欢迎小伙伴们学习和下载该案例资源,如有任何疑问可私信或者评论区提问。
帆软报表FineReport中数据连接中的Tomcat配置JNDI连接,要通过JNDI方式定义数据连接,首先在Tomcat服务器配置好JNDI,然后在设计器中直接调用JNDI的名字,即可成功使用JNDI连接,本文进行详细演示。
报表开发工具FineReport中js自定义按钮导出.pdf