我是IT部的一枚表哥,由于Excel用的非常6,所以被招进开发部,每天的工作就是取数做报表。
一次接到一个需求,项目部要求每周出一个项目进度统计表,汇总各方数据,便于每周监控。
公司是做地产的,由于同时开展的项目比较多,领导没有时间一一过目,但是又需要掌握每个项目的进度,于是就希望做一个月度项目的电子统计表格,每周都统计给他看。
由于项目这块没有业务系统,数据都存留在每个人的Excel中,没有数据采集的流程,需求又紧,于是想当然的用Excel来处理。连夜和业务部门沟通需求,罗列指标,设计展现表格以及用户收集数据的填报表格。为了方便自动化,我还特地上网学习了VBA的一些编程知识,写了N个宏,设计出了如下版面(数据敏感就放了个模板)。
表格背后流淌着我的无数心血,每周我都要花上一天时间督促让各方填报数据,然后汇总到总表,排版计算,定时发送到大佬邮箱,一做就是3天。心想着项目部每周都要拿着我的数据开进度会,这么煞费苦心高层大佬一定是满意的。
然鹅,有一次路过领导的工位,不经意间瞄到领导的邮箱,居然全是未读。。。
合着我做了一个月的报表,领导根本没有看。每次都要拉上我开周会,做PPT汇报进展数据,原来纯粹是因为不想看报表。
再执行了两个月后发现情况更差,大家都开始敷衍了。递交数据拖延,表格乱的满天飞,领导习惯性的不闻不问了。
期间,同事也曾旁敲侧击说我的表格太复杂太枯燥了,而我固执的以为统计表就是要清楚信息量大。
心想着这事不能就这么凉,调研了一番了解到:
1、没有理解业务方的需求,领导关注的只是几个重点指标的进展,自以为报表要信息量大于是是做了一个密密麻麻的明细表
2、体验上,格子状的表格看久了确实容易疲倦,而且制作上也很费劲。
那就先优化报表,得到业务方的认可,再自上而下推动数据工作的顺利展开。
在调研过程中发现,站在业务分析视角上,大家其实确实更愿意看到这样的可视化。
乍一看会觉得花里胡哨,这还叫报表么?但是仔细研究发现,相比表格,这样的可视化展示确实惊艳,直观展现了数据的变化情况和进展。其实表格原则上也是一种可视化手段,只不过图表形式的展示,能更方便展示、交流、沟通数据信息。
更有大神做成这样的可视化大屏。(果然,人都是视觉动物!)
其实这类报表学名叫dashboard,是展示度量信息和关键业务指标的工具。
研究了一阵,找了一个可视化报表工具画了这样一个报表(美观度差了点)。为了便于查看,我在领导桌面设置了一个快捷程序,双击就能直接在网页上查看报表,每周一上午自动更新数据,得到领导一阵夸赞。
尝到甜头后,在不同的项目上又陆续尝试着做了几张dashboard,现在管理层报表统一都做成这种形式,在全公司推广。
在这过程中,对于可视化报表的制作,积累了不少经验,这里和大家分享。
1、用什么工具来做?
这可能是大家最关心的。数据可视化,其实大部分工具都能实现,Excel就可以,同时很多人推荐的Python、R语言、Tableau等专业数据分析工具几乎都能很轻松的实现,复杂的需求Python用代码会实现得更好。
但是由于是做报表,可能涉及到和业务系统的打通,需求多,而且Excel收集数据以及制作报表基本都是全手工,工作量大且容易出错,遇到大数据量的时候会卡死,而且要做精美的可视化离不开数据的整理,遂放弃。其实资源有限的情况下可以用专业的报表工具,这里我用的是FineReport。
FineReport是一款企业级的web报表产品,能做数据录入、查询和展示。做复杂的格子类报表亲测秒杀Excel,关键是做可视化的dashboard很有一套。传统的格子类报表,常常以表格的形式展现,它能突出数据本身,但并不利于直观的看出数据之间的关系/趋势等。FineReport除了能实现复杂的表格样式外,还具备极其丰富的图表,能够满足多样的数据可视化场景诉求。
其数据可视化分为三个大类:统计图表、专注大屏的动效图表还有一些自定义的可视化插件。
(1)统计图表
FineReport提供数十类100多种统计图表,每类又包含多种风格样式。
每种图表的实际示例,我从官方演示系统截图下来的,乍一看很像Echarts图表库。
(2)可视化大屏类动效图表
就是上文很炫的可视化大屏。它里面有专为大屏数据可视化开发的一些动效图表。
做成的大屏就是像下面这样的。
(3)插件
除了官方产品自带的图表外,还有众多扩展图表插件。扩展图表插件是基于webgl等技术开发,通过简单拖拽即可实现自动播放、3D动画特效等多种效果,比如3D地球、3D卡片动画等。且可以根据图表类型和数据提供“自动轮播”和“定时刷新”,满足用户不同场景下的业务需求,在体现数据价值的同时让大屏炫酷起来。
2、可视化报表如何平衡实用及美感,避免花里胡哨?
酷炫而无物是做可视化要避免的,不能一味的追求可视化而忘记数据想要传达的业务含义。所以,可视化的前提在于你要展示哪些数据和指标。
站在分析的角度来布局。假设你要做一张可视化报表,报表一定有明确的主题,比如项目经营分析。有了明确的主题一定有几个与之核心相关的指标,比如项目销售额、项目回款额、项目进展进度等等。然后指标可以再多维度拆解。
比如从时间的维度。每个月项目销售情况如何,在建项目的进展如何?
从地理维度。各大区域项目情况如何?可以做个排名情况。
从计划维度。和年初定的计划相比,差了多少?
做好以上工作再去考虑每一块展示用什么图表和表格,怎么布局搭配,可以借鉴以下的思路。
另外一个点,领导所要看的报表其实和基础报表不一样,管理层的报表更多是想从数据的展示中分析出一些对业务有帮助的信息,更加注重数据分析和纠查甄错。也就是带着数据分析的思路去制作可视化报表。除了指标排布是哪个需要着重考量,报表也要给与一些分析属性。
比如一张报表只能展现全国的项目销售额、项目回款额、项目进展进度,但假若发现某个月的数据极其低迷,想要分析原因,可以通过对地域、项目产品等维度进行下钻分析,分析到底是哪个环节出了问题。
这一块finereport有很强大分析钻取功能。
所以,总结来讲,就是
① 对展现什么数据指标思路要清晰
② 可视化要围绕分析走
③ 巧用动态报表
3、思考:报表最终如何为业务服务?
最后再扯些深度的。
给谁做报表就要站在谁的立场来考虑。报表是维持公司正常生产运营的一部分,领导关注企业发展,需要业绩的报表,分析师关注问题,需要从报表发现异动,财务人员关注收入和利润,需要从报表入账。
还有一个建议,报表要规整和自动化。就比如我这次的项目周报表,每个报表要花费两天,但我可以通过finereport的参数设置,定制调度,将这一类型的报表收敛成一个模板,每次只要选择时间导出即可,52份报表我只要做一个查询模板,so easy!要知道,做同一个业务,由于企业不同的人,不同场景,不同理解,不同角度,都会提出针对一个业务的不同报表,你不能总是忙于新增报表,而应尽量在原有基础上去扩展。有些时候,即使是不同的业务,假如类型相同,指标相同,也可以仅作一张报表,不同的业务作为维度即可。
作为表哥,我们不能仅限于做成一张报表,而应致力于思考如何做好一个平台,做好一张报表,让报表更快速,更准确、更简洁始终是我们表哥追求的目标。
综上,能直观的展现业务核心数据,用合理的可视化来展现,并能借助报表来从中发现业务问题,且规整自动化,我想这大概就是大部分人想要看到的报表吧!