数据可视化,是一种使用技术手段表达数据结果的一种方式,但是大部分数据可视化=各种图表,这是十分外行的想法。
数据可视化是一个需要理解业务需求、数据结构、数据交互原理、数据表达逻辑以及考察审美的复杂工作。
数据可视化一般是整个数据分析链路的最后一个环节。在数据可视化之前,我们需要对原始数据进行大量的整理和清洗处理,这一环节首选数据库SQL,数据处理之后才是分析和可视化。数据可视化有两个方向很值得去尝试:商业智能BI与动态交互图表。
所以,这里推荐一个数据可视化技能的进阶路线:SQL+BI+Echarts
接下来以分析一个电商销售数据的实操案例,来演示如何用SQL、BI商业智和Echarts制作数据可视化。
为什么数据分析一定要具备SQL技能?
首先,互联网公司每天都需要处理大量数据,这些数据不可能都存储在某个人的PC上。在这种情况下,一般用数据库来存储数据,数据都在数据库里,SQL又是数据库语言,所以当然必备了。
其次,Excel对十万条以内的数据处理起来一点不虚,但是资深的数据分析师还是笑摸狗头,Too Young Too Sample,爷搞得都是百万数据。要百万数据,就得上数据库。
SQL是数据分析师的核心技能之一。有些公司并不给数据库权限,需要分析师写邮件提需求,这非常不好。数据分析师经常有各类假设需要验证,很多时候写十几行SQL就能得到的答案,还得麻烦其他部门导出数据。
在数据可视化之前,我们需要对数据进行大量的处理工作,以“某电商订单”为例。其数据量为37000+,包括7个原始字段:
下图演示的是使用最强大的开源数据库PostgreSQL处理数据的流程,当然MySQL也用的很多:
- 创建数据库并导入csv数据
- 查看并删除相关缺失值
- 列明修改及计算商品打折折扣力度
以上数据整理工作也可以在excel中完成,步骤包括:数据筛选、数据透视、Vlookup连接数据等。但是由于数据量较大,期间你有可能面临灰屏、死机、程序跳出未保存等各种风险。总结来说,在企业级的数据量处理中,excel是不行的。一般10W以上的数据量都要借助数据库。
对于SQL(数据库语言),处理几万条乃至更大体量的数据,效率都是非常高,并且SQL语言应该是最容易理解的语言了。
回到可视化,SQL作为数据可视化工作的第一步,完成了数据管理及清洗工作。
数据可视化作为一种表达艺术,自然有更自由更专业的工具和方式,比如用Echarts制作复杂交互图表!
Echarts —— 一张图,一个故事
复杂交互图表是一种蕴含更大体量数据及更复杂数据结构的可视化,可以使读者和可视化图表之间有更好的互动。其形式包括地理空间可视化、层次关系网络可视化、基于时间的多图表可视化等等。
使用Echarts的工作流可以简单概括为:使用SQL将数据处理成合适的格式(这个格式称为JSON),再读懂echarts图表中的JS参数,修改对应参数并加载JSON数据,实现可视化效果。
还是以”电商销售数据”为例,我们通过修改现有案例的参数来绘制一个交互式图表:
- 找模板及参数查阅
- SQL处理数据
- 代码配置及可视化图表呈现
最终的图表内容中,横坐标是双十一前后10天的日期节点,我们选择了三个品牌来展示不同商品的价格变化趋势,通过图表互动,也可以看到三个品牌在双十一期的打折率、价格和营销策略的区别:
- 打折思路:双十一当天最低价,之后涨价但少于双十一前价格
- 妮维雅产品价格区间主要在100-200元之间;相宜本草产品价格区80-400之间;自然堂产品价格区间较分散
看到这儿,可能很多小伙伴儿会有疑问,以上的两种可视化途径,优劣势如何,上手难度又怎样?
其实,上面的工具都很好学,SQL是一种数据库语言,前面说过了必须掌握,可视化FineBI基本就是拖拽操作,上手非常简单,除了复杂的数据处理工作需要写公式来新增数据字段,条件语句。Echarts需要掌握一点JS语句,熟练了也很容易上手,复杂的需求就不评价了。
应对大部分业务场景的可视化分析,FineBI就足够了,自身可视化效果也有数十种,多了也未必会用。毕竟用起来最简单。
专业的可视化,比如新闻可视化,科学研究,海量数据洞察等,结合Echarts使用的较多,因为开源,而且可以随意个性化自定义。
本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「我们」留言处理。