由于目前企业客户要求的报告基本都是以Excel为主,所以对数据分析这个工作来讲,不可避免的需要通过程序和Excel打交道。由于Excel的封闭性,而且客户方面对版面格式要求很高,所以对程序开发来讲,还是个比较有难度的事情。目前主要通过Java POI来实现,分了几个方面。
- CSV,由于Quantum输出只有CSV逗号分隔符格式,所以第一个开发的排版程序就是讲CSV转Excel,并添加目录,显示友好化。同时为提高效率,做了进一步开发,直接调用Quantum程序运行,而后接着排版,相当于一个自动化程序。
- HTML,对Python来讲,pandas数据分析库可以直接输出到Excel,虽然很简单,但是可惜的是,这种简单的格式客户显然是无法接受的,于是还是使用了Java POI 进行再排版。同时,考虑Python适于HTML开发,于是出于报告未来WEB化方向的考虑,使用了Python生成WEB平台报告,而后Java读取HTML table进行排版的方式,支持多报告和自定义格式,算是一个非常灵活的解决方案。