大比拼:用24种可视化工具完成同一项任务的心得体会
大数据文摘作品, 转载要求见文末
作者 | Lisa Charlotte Rost
编译团队 | 蒋宝尚,杨捷
互动专区
亲爱的读者,你是否也有在特定场景使用的非常便捷的软件,欢迎评论区留言给我们,和大家分享这些使工作得心应手、效率百倍的瞬间!
“
寻找最好的工具意味着仔细斟酌目标和需求。
”
回顾今年5月,我为自己制定了一项挑战——我想要在数据可视化领域尝试使用尽可能多的应用程序、库和编程语言。为了在一个公平的竞争环境中比较这些工具,我运用这些工具分别创建了相同的散点图(也称为气泡图)。
基于结果,我发布了两篇文章:
1.数据可视化应用程序(http://lisacharlotterost.github.io/2016/05/17/one-chart-tools/);
2.数据可视化库和编程语言(http://lisacharlotterost.github.io/2016/05/17/one-chart-code/)。
所有工具的使用情况概述可以在这个Google电子表(https://docs.google.com/spreadsheets/d/1Ac4ZOBJRNOipVOnF0vW6H3mXSf8H3XM7z9zMh3OxP7I/edit#gid=0 )中找到。现在我将从更高级的视角来比较这些工具罗列我的经验所得。
充分说明:尝试使用新工具之前,本实验深受已掌握工具的影响。按照工具使用时长排序,它们是:Adobe Illustrator, Google Sheets, Tableau, R & ggplot2, d3.js, Processing, Raw, Lyra.
以下GIF图是我创建相同图表所用到的12种不同应用程序:
下图是所有图表库的不同输出结果:
让我们开始吧!以下是我的心得体会:
“
世上没有完美的工具,只有针对特定目标的优质工具!
”
数据可视化是一种广泛运用于不同子领域(例如科学、商业和新闻业)的沟通工具。不同领域有不同的需求—— 但即使在数据新闻领域,数据可视化也有不同的方法和不同的目标与之相对应。不存在任何一个工具可以满足所有的需求。
下面是我在实验中遇到的一些相互矛盾的目标:
分析vs演示:你想使用工具来挖掘数据(R,Python)还是构建面向公众的可视化(D3.js, Illustrator)?Tableau,Ggvis,Plotly试图建立两者之间的桥梁,但我很乐意看到更多优化的解决方案。
针对这个矛盾点,以下是我对所有工具的划分:
数据管理:在创建数据可视化时,您是否会更改原始数据(例如更改某值或所有数值,添加行或列)?
在一些应用程序(如Illustrator)中,当你对数据做了轻微的改动时,你便需要重新构建图形。这是最不方便的数据管理,而且阻碍实验的进程。较为方便的办法是更改工具外部的数据,然后(再次)导入新数据更新可视化。 D3.js就是这种方式的一个例子。但是存在其他应用程序比运用代码处理数据更加方便:导入数据之后,您可以直接更改或添加新的转换列(列如:Plotly和Lyra)。
图表类型vs创新型图表:你只需要基本的图表类型,如条形图或折线图(Highcharts,Excel)或者你想要创建不可思议的图表魔法(D3.js)? 基于对D3.js的理解,我认为创新型图表库必然伴随着冗长的代码和陡峭的学习曲线。我在代码处理中用一半的代码重新创建了相同的图表(Processing太糟糕了,不适合数据可视化)。然后运用Lyra,这是一个在不变更代码的前提下允许使用数据操纵视觉元素的所有属性的应用程序。
动态 vs 静态:你想要为网络创建交互性的图表(D3.js,Highcharts)吗? 或者你不介意最终创建一个PDF / SVG / PNG(R,Illustrator)? 几年前,交互性图表被视为圣杯 - 但是近来人们似乎已经从“看起来”转向了开始思考它的意义。(https://github.com/archietse/malofiej-2016/blob/master/tse-malofiej-2016-slides.pdf)
而且,交互性图表对于分析的部分也是很有意义的。 R语言中(如Ggvis和Plotly库)使您可以轻松地将鼠标悬停在可视元素上并查看原始数据。
“
世上没有完美的工具,只有针对特定思维方式的好工具。
”
在我发表文章之后,Alberto Cairo建议我尝试了两个使用起来令我很困惑的工具Yeeron和InZight(https://twitter.com/albertocairo/status/732676760840605697)。 另一方面,他指出Lyra(给了我很多启示的工具)是很难使用的。Cairo和我有着不同的背景:他是一位记者兼顾设计师,但是他更倾向于认为自己是一名记者,而我更倾向于认为自己是一名设计师。他喜欢Quadrigram这种将图形看作故事的一部分的工具,并且因其具有精选的设计默认值。而我喜欢那种在绘图的过程中给我完全自由的工具。
人类有不同的观点和偏好,工具开发者也是如此。他们带着特定的信念设计工具,思考工具当前的用法以及以后应该如何运作。但这些信念不一定与你的信念相符。工具开发者深受现有工具、同行同仁以及用户反馈的影响。因此,工具不可能适用于每个人,特别是在数据可视化和数据新闻领域,工具开发者和使用者有着非常不同的背景:新闻媒体人,统计,计算机科学,设计等等。如果一个工具适合为我工作,我不能认为它会让所有人满意。
“
我们仍然处于一个“应用程序服务简易生活,代码引致精彩人生”的世界。
”
大多数应用程序都是很容易学习的,但是功能有限。大多数编程语言/图表库较难掌握,但可以提供更多的灵活性和选择性。下面的图表是我对灵活性和学习困难程度之间关系的一些主观想法。
令人失望的是情况依然如此。编程不应该作为让数据新闻领域家喻户晓的先决条件。而且实际上代码对于很多人来说仍然是可望而不可即的。我们需要从问题的两端同时开展工作。帮助人们进入代码的世界可以使他们在短期中感到归属感。但我们仍应该继续从事开发高度灵活、用户友好型的应用程序给更多的人带来长远的影响,这可以使他们在百忙之中接受最好的数据可视化规则教学。
我们欢迎像Plotly,Tableau,Lyra和NodeBox这样通过点击和拖动界面提供高度灵活性的应用程序。我很想看到更多这样的程序。创建与代码一样强大的用户界面“只是”一项设计上的挑战。
“
每一种工具都为你指引了一条路径。
”
我的前NPR视觉队友布莱恩·博耶在他的一篇文章(https://medium.com/npr-design/that-one-free-tool-ab585438696d#.xva3leef1)中提到。那么什么是可用的路径,你会去选择沿着哪一条路径呢?
我的路径心象图如下图所示:
就个人而言,我认为自己只可以熟练地掌握“简易方便图表”和“分析图表(你应该发表)”的一小部分。通过这个实验,我很明确地想要更深入地了解“图表分析”。而且我想更多地研究“创新型的外部图表”。同时也想通过Lyra来处理更多的原型。
你目前选择的路径是什么,为什么?哪些路径未被充分开发呢?希望您可以通过电子邮件:[email protected]或Twitter(@lisacrost)与我分享(https://twitter.com/lisacrost)。
最后,非常感谢Brian Boyer,Maarten Lambrecht和Lindsay Muscato对此作品的宝贵反馈; 同时感谢Ben Fry,Christopher Groskopf以及许多其他工具制造商,他们帮助我理解数据可视化工具场景。
作者介绍:
Lisa Charlotte Rost
Lisa喜欢设计数据可视化,目前在华盛顿特区的国家公共广播电台担任Knight-Mozilla OpenNews研究员。当她不在开会或者帮助NPR网站创建图形时,她便在博客(https://lisacharlotterost.github.io/)或Twitterabout(https://twitter.com/lisacrost)发布与数据相关的文章。当她回到柏林时,她为OpenDataCity,SPIEGEL和Tagesspiegel做过设计,在大学中担任数据可视化教学,并且组织开展了Data Viz Meetup。