Shawn's blog Writing is Thinking

如何将枯燥的大数据呈现为可视化的图和动画?

知乎原回答:如何将枯燥的大数据呈现为可视化的图和动画?

“A picture is worth a thousand words”, 数据可视化这几年可谓是风生水起,尤其在一些发达国家,各类可视化工具和商务智能软件百花齐放,不少大公司和政府机构运营已经极度依赖于它们。原因很简单,人都是图像敏感而思维趋于懒惰的动物,图像展现数据的方式使得观众可以快速从大数据集里得出有效信息,从而做出决策。

这里列出个人比较熟悉同时也是市面上最流行的集中可视化工具,可能跟楼上的答案有所重复:

非技术分析人员和非专业数据分析人士:

  1. Tableau

Tableau连续几年一直保持BI市场领头羊的地位,Tableau的一大优势在于简单易上手, “导入数据 -> 关联数据 -> 制造图标 -> 上传分享”,鼠标点击拖拽一步到位。相比于其竞争者,Tableau的图形也更美观大方,给人视觉上的愉悦感。贴几个连接功大伙儿慢慢欣赏: 50 Years of Crime in the US Blame The Weather: US Flights Delayed by Precipitation Domestic Violence in Spain

然Tableau 也不是全无缺点,比如它的速度就不够快,当数据很大时,数据引擎每次重新计算和检索数据需要较长的时间,给用户造成卡壳的不良体验,而且Tableau还巨贵,一般小老百姓和初创公司是用不起的,下面是官方定价,大家感受下: Buy Tableau | Tableau Webstore

大家平时所听说的Tableau其实是指的Tableau Desktop,这是他们家用于制作图形的个人桌面客户端软件,但其实Tableau的实力远不止如此,Tableau家族的其他产品还包括:

1) Tableau Public 免费的Tableau图形发布平台,用户可以上传制作好的作品到云端,所有人都可以在线访问,但免费的东西从来都不好用,Tableau Public免费的代价是以牺牲大量功能得来的,比如使用Tableau Public时,用户无法给自己的作品设置访问权限,而且支持的数据源也很有限;

2)Tableau Server 企业采用的Tableau中央服务器,对用户和数据进行统一管理,比如同一家公司里,不同部门的不同工作人员都可以将自己的数据和制作好的可视化图形上传到Tableau Server,然后给同事设置不同的访问权限(例如,同一个文件,同事A无访问权限,同事B可以访问但不能修改,同事C既可以看到还能修改,不高兴了还能一键删除。。)

3)Tableau Online Tableau Online说白了就是Tableau Server的官方托管版本,由Tableau提供服务器和维护服务,客户只要说明自己的要求和乖乖交钱就好了,当然这在某种程度上也失去了自定义和修改系统的灵活性。

另外Tableau 还提供了丰富的REST API和Javascript API允许程序员自主开发基于Tableau数据引擎和数据仓库的第三方平台。更多信息移步:

Tableau REST API

Tableau Javascript API

  1. QLIK

QLIK是Garter排行榜前三的另外一家,目前市场占有率略逊于Tableau(主要归功于Tableau的容易上手的GUI和美丽大方的动态图形),但是大有迎头赶上的趋势,估计超越Tableau只是时间早晚的事。QLIK旗下有两个主打产品:QLIK VIEW 和 QLIK SENSE。

刚接触QLIK的人常常为这两个产品的功能困惑,好像它们都是干一样的活,完全可以相互替代,为什么已经有了QLIK VIEW还要QLIK SENSE?其实,这两个产品还是有重要区别滴! QLIK SENSE的出现是为了弥补QLIK VIEW存在的不足,官方的解释是,QLIK VIEW主要用于‘Guided Analytics’,通俗地讲,如果你想深挖数据,探索变量与变量之间的联系,那就选择QLIK VIEW吧。而如果你已经对数据有一定了解,只是想基于数据创建酷炫的图形,那么你应该选择QLIK SENSE。

QLIK相对于Tableau的优势主要有:

1) 价格相对便宜;

2) QLIK使用In memory的存储计算方式,将数据存放于主机的内存中,使得计算速度大大提高(不过好像现在Tableau也在用这个技术);

3) QLIK提供非常全面的SDK和API支持,简直让人眼花缭乱,这使得开发人员能够进行深度定制开发,比如借助D3这类的Javascrit可视化库扩展开发QLIK本身不自带的图形,这样一来,QLIK支持任意可视化图形成为可能,这也是我更看好QLIK的一个重要原因。

总的来讲,QLIK有一个好的长远规划,前途还是很美好滴。

  1. Powerful BI

三巨头的另外一个产品,老东家是占据PC半边天的大名鼎鼎的微软,Powerful BI作为一个新产品,能在短短几年内迅速挤进BI市场前三,可见微软在它身上下了不少心血。不过因为本人没有多少使用Powerful BI的经验,因此其优缺点不在这里详述。

专业数据分析员和开发人员

以上BI工具因其方便的图形界面使得非专业人员也能快速开发出美观的动态图形,但对于具有编程能力的分析人员而言,一款强大灵活地开发工具仍旧不可替代,这类工具具有很多BI软件所不具有的优点,比如足够灵活,速度非常快,而且免费!!免费啊!!

  1. D3.js

楼上已经有许多答案都提到了D3, D3全称Data Driven Document,即数据驱动创建图形,创始人是Mike Bostock。 D3是一个很底层的数据可视化Javascript库,这也注定了它具有很强的可扩展性(现在已经有很多基于D3开发的第三方数据可视化插件,比如上面有人提到的DC.js),不过随之而来的是其较为陡峭的学习曲线。

D3相对于Tableau和QLIK的优势和劣势都一目了然:

优点

1) 快速: Javascript直接运行于浏览器,速度非常快,也可以很方便地调用各类API获取数据;

2) 灵活: D3是一款非常底层的数据可视化库,可以直接操作SVG,理论上,你想要的任何图形D3都可以实现(前面就提到可以用D3扩展QLIK的图形支持);

3) 免费:相信价格是用户非常关注的一个问题,而D3的一个杀手锏是 它!是!免!费!的!

缺点

1) 难: 所有学习D3的人都说它难,它的那一套 ‘Data Driving’ 逻辑常常让人懵圈,因此不少人感叹D3真是聪明人才用的来的;

2) 开发周期长: 手动敲代码自然比不上简单的鼠标拖拽 ,BI软件的图形开发周期常常在几个小时不等,而用d3手敲代码,根据图形的复杂程度,开发周期常在五天到两个星期不等。

  1. R

R在数据分析领域的地位不言而喻,其丰富而强大的扩展包支持使得几乎一切数据层面的分析和操作成为可能,这些支持中就包括数据可视化。在众多可视化包里面,最受欢迎莫过于ggplot2和Rshiny,ggplot2的图形与前面那些动态图形都不一样,是静态的,但想一想只要两三行代码就可以生成复杂的可视化图形和地图,想想是不是还有点小激动呢。如果花点时间学习Rshiny,动态图形也是完全没问题地哦!

blog comments powered by Disqus