大比拼:用24种可视化工具完成同一项任务的心得体会

简介:


0?wx_fmt=png

回顾今年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种不同应用程序:

0?wx_fmt=gif

下图是所有图表库的不同输出结果:

0?wx_fmt=png

让我们开始吧!以下是我的心得体会:

世上没有完美的工具,只有针对特定目标的优质工具!

数据可视化是一种广泛运用于不同子领域(例如科学、商业和新闻业)的沟通工具。不同领域有不同的需求 —— 但即使在数据新闻领域,数据可视化也有不同的方法和不同的目标与之相对应。不存在任何一个工具可以满足所有的需求。

下面是我在实验中遇到的一些相互矛盾的目标:

分析vs演示:你想使用工具来挖掘数据(R,Python)还是构建面向公众的可视化(D3.js, Illustrator)?Tableau,Ggvis,Plotly试图建立两者之间的桥梁,但我很乐意看到更多优化的解决方案。

针对这个矛盾点,以下是我对所有工具的划分:

0?wx_fmt=png

数据管理:在创建数据可视化时,您是否会更改原始数据(例如更改某值或所有数值,添加行或列)?

在一些应用程序(如Illustrator)中,当你对数据做了轻微的改动时,你便需要重新构建图形。这是最不方便的数据管理,而且阻碍实验的进程。较为方便的办法是更改工具外部的数据,然后(再次)导入新数据更新可视化。 D3.js就是这种方式的一个例子。但是存在其他应用程序比运用代码处理数据更加方便:导入数据之后,您可以直接更改或添加新的转换列(列如:Plotly和Lyra)。  

图表类型vs创新型图表:你只需要基本的图表类型,如条形图或折线图(Highcharts,Excel)或者你想要创建不可思议的图表魔法(D3.js)? 基于对D3.js的理解,我认为创新型图表库必然伴随着冗长的代码和陡峭的学习曲线。我在代码处理中用一半的代码重新创建了相同的图表(Processing太糟糕了,不适合数据可视化)。然后运用Lyra,这是一个在不变更代码的前提下允许使用数据操纵视觉元素的所有属性的应用程序。

0?wx_fmt=png

动态 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库)使您可以轻松地将鼠标悬停在可视元素上并查看原始数据。

0?wx_fmt=png


世上没有完美的工具,只有针对特定思维方式的好工具。

在我发表文章之后,Alberto Cairo建议我尝试了两个使用起来令我很困惑的工具Yeeron和InZight(https://twitter.com/albertocairo/status/732676760840605697)。 另一方面,他指出Lyra(给了我很多启示的工具)是很难使用的。Cairo和我有着不同的背景:他是一位记者兼顾设计师,但是他更倾向于认为自己是一名记者,而我更倾向于认为自己是一名设计师。他喜欢Quadrigram这种将图形看作故事的一部分的工具,并且因其具有精选的设计默认值。而我喜欢那种在绘图的过程中给我完全自由的工具。

人类有不同的观点和偏好,工具开发者也是如此。他们带着特定的信念设计工具,思考工具当前的用法以及以后应该如何运作。但这些信念不一定与你的信念相符。工具开发者深受现有工具、同行同仁以及用户反馈的影响。因此,工具不可能适用于每个人,特别是在数据可视化和数据新闻领域,工具开发者和使用者有着非常不同的背景:新闻媒体人,统计,计算机科学,设计等等。如果一个工具适合为我工作,我不能认为它会让所有人满意。


我们仍然处于一个“应用程序服务简易生活,代码引致精彩人生”的世界。

大多数应用程序都是很容易学习的,但是功能有限。大多数编程语言/图表库较难掌握,但可以提供更多的灵活性和选择性。下面的图表是我对灵活性和学习困难程度之间关系的一些主观想法。

0?wx_fmt=png

令人失望的是情况依然如此。编程不应该作为让数据新闻领域家喻户晓的先决条件。而且实际上代码对于很多人来说仍然是可望而不可即的。我们需要从问题的两端同时开展工作。帮助人们进入代码的世界可以使他们在短期中感到归属感。但我们仍应该继续从事开发高度灵活、用户友好型的应用程序给更多的人带来长远的影响,这可以使他们在百忙之中接受最好的数据可视化规则教学。

我们欢迎像Plotly,Tableau,Lyra和NodeBox这样通过点击和拖动界面提供高度灵活性的应用程序。我很想看到更多这样的程序。创建与代码一样强大的用户界面“只是”一项设计上的挑战。


每一种工具都为你指引了一条路径。

我的前NPR视觉队友布莱恩·博耶在他的一篇文章(https://medium.com/npr-design/that-one-free-tool-ab585438696d#.xva3leef1)中提到。那么什么是可用的路径,你会去选择沿着哪一条路径呢?

我的路径心象图如下图所示:

0?wx_fmt=png

就个人而言,我认为自己只可以熟练地掌握“简易方便图表”和“分析图表(你应该发表)”的一小部分。通过这个实验,我很明确地想要更深入地了解“图表分析”。而且我想更多地研究“创新型的外部图表”。同时也想通过Lyra来处理更多的原型。

原文发布时间为:2017-02-15

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关文章
|
8天前
|
数据采集 SQL 数据可视化
大数据可视化技巧:借助PowerBI提升数据故事讲述力
【4月更文挑战第8天】Power BI助力大数据可视化,支持多种数据源连接,如SQL Server、Excel,提供数据清洗与转换功能。通过选择合适图表类型、运用颜色和大小强化表达,创建交互式仪表板。讲述数据故事时,注重故事主线设计,利用叙事技巧引导观众,并添加文本说明。分享已完成报告,提升数据驱动决策能力。动手实践,体验Power BI的强大与易用。
25 0
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
我失业了?| ChatGPT生信分析初体验
我失业了?| ChatGPT生信分析初体验
75 0
|
机器学习/深度学习 人工智能 数据可视化
一键自动化数据分析!快来看看 2022 年最受欢迎的 Python 宝藏工具库! ⛵
探索性数据分析(EDA)在机器学习中至关重要!这些高效又绝美的宝藏库,快用起来——Matplotlib、Seaborn、Plotly、Bokeh、Altair、pandas-profiling、Sweetviz、AutoViz、Microsoft Power BI、Tableau!
3029 1
一键自动化数据分析!快来看看 2022 年最受欢迎的 Python 宝藏工具库! ⛵
|
程序员
我的收藏:第四章:八十种在线工具
我的收藏:第四章:八十种在线工具
144 0
我的收藏:第四章:八十种在线工具
|
机器学习/深度学习 数据可视化 数据挖掘
强烈安利这款功能强悍的机器学习可视化工具
强烈安利这款功能强悍的机器学习可视化工具
强烈安利这款功能强悍的机器学习可视化工具
|
机器学习/深度学习 SQL 大数据
吐血整理!这可能是最全的机器学习工具手册
吐血整理!这可能是最全的机器学习工具手册
100 0
吐血整理!这可能是最全的机器学习工具手册
|
BI
《软件需求与分析》阅读笔记
  阅读文章《我们应该怎样做需求分析》我了解到,软件需求分析需要掌握以下内容。   需求调研:对自己需要开发的软件进行调查,了解好用户的需求,针对需求做好准备。需求调研对于一个软件开发来说,是一个系统开发的开始阶段,它的输出“软件需求分析报告”是设计阶段的输入,需求调研的质量对于一个应用软件来说,是一个极其重要的阶段,它的质量在一定程度上来说决定了一个软件的交付结果。
1229 0