介绍一个开源好用的可视化报表工具

CellReport 是一个制作复杂统计报表的工具,以解决日常快速制作统计报表的需求为初衷。它提供了多种数据源选择,包括数据库、Excel 文件、API 服务和已有报表,通过内置的集合函数,以类 Excel 界面设计报表,最终呈现结果。





功能特点

  • 1.支持常规的清单、分组和交叉报表:可以根据需要对数据进行清单、分组和交叉展示。
  • 2.多源、分片:支持使用多个数据源,并且可以将数据分片处理。
  • 3.多数据集的集合运算:可以对多个数据集进行集合运算,方便加工数据。
  • 4.单元格扩展、引用:支持单元格的扩展和引用,方便制作复杂的统计报表。
  • 5.内置类 JS 语言引擎:可以使用内置的类 JS 语言引擎实现自定义脚本功能。
  • 6.丰富的函数定义:内置了丰富的函数定义,方便进行计算和操作。
  • 7.可自定义扩展函数:可以根据需要自定义扩展函数,满足个性化需求。
  • 8.页面元素丰富:预定义了报表组件、Echart 组件、数据展现组件等丰富的页面元素。
  • 9.灵活的报表元素间数据引用:报表元素间的数据引用设置灵活,方便局部报表刷新。
  • 10.支持组件报表引用:可以引用其他报表软件制作的报表(专业版提供)。

工作原理

在报表运行时,首先以并行方式获取所有数据集的数据,并根据报表设计中预定义的公式进行数据合并和运算。最终将数据以 JSON 格式传递给前端展示页面,前端根据 JSON 结果呈现报表。

CellReport 的运行环境内置了类 JS 语言环境,所有运算都基于该语言核心。制作报表时,只需要记住少量函数以及基本的加减乘除运算。

运行环境提供了多个可以自定义控制的接入点,例如在报表运行前进行通用检查、控制数据是否回传给前端等。前端展示部分使用了 Vue 框架和模板编译器,可以自由控制 Echart、数据展示等组件的显示样式。

CellReport 的后端基于 .NET 6 运行,具有高内存效率,仅需约 300MB 内存。它采用了大量异步任务和延迟返回等技术,执行效率与手写加工数据程序相当。

如果系统没有预定义的函数,可以通过实现 FunctionUnit 接口来扩展系统,也可以使用内置语言实现一些简单的函数扩展。

  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值