数据新闻工具

1462458466-2233-5bb53b9b487831d3d539b700bcec

本文由swissinfo的数据新闻编辑和工程师Duc Quang Nguyen发表在medium.com

FlowingData 的Nathan Yau近日描绘了他自己是如何进行数据可视化工作的。他的帖子非常贴合于数据驱动新闻工具的选择:

“我应该学习什么工具?哪个才是最好的?”我迟迟不愿回答,因为最适合我的工具并不一定是其他人的最佳选择。

如果你已经对某一套软件非常熟悉,那你最好通过已知方法来完成工作,因为如果可以用数字来编程绘图,那么你就可以将数据可视化。

而我回顾了我自己的工具包——以数据为基础并反复涉及R语言。这是因为我对此比较熟悉。我不认为每个人都非得照搬我的工作流程,而我也不会大篇幅地去讨论 Excel,Python,Javascript等,虽然我非常清楚这些才是数据新闻中更典型的工具。

另外,在我开始陈述我的工作流程和2016年的工具介绍前,我需要提出的是我是我所在编辑室中的独立数据新闻记者。更常见的情况是新闻机构往往拥有由专长于具体领域的人员构成的数据新闻/可视化新闻团队。我的工作流程看起来就更加“寒酸拮据”。

又出于个人思想原因再加上我是一个书呆子,我几乎都是独自使用开源免费的工具。再次声明,这只是因为我更加熟悉。如果有一个框架能够让我更快更好地完成工作,我会毫不犹豫地转向那个工具。

数据获取、清理和格式化

1462458466-6700-2e732142ecaa8001a18b86d6fa89

Tabula(//tabula.technology/)

有的时候你会遭遇到数据新闻记者最不想面对的灾难:PDF格式的数据。Tabula不需要编码就可以降低你在PDF中提取数据表格的痛楚。

Open Refine(//openrefine.org/)

我在工作中经常遇到R语言的原始数据,但是如果你的数据太凌乱,手动录入进电子表格或用编码来清理数据会非常枯燥乏味。Open Refine可以让数据清理变得可交互且可复验。它拥有世界上最好的编码或手动清理。

LibreOffice https://www.libreoffice.org/download/libreoffice-fresh/ / Google sheet (https://www.google.com/sheets/about/ / MS Excel

1462458466-2877-8bd4188ad8b7a68b87d6267ff989

越少使用电子表格,我心情就会越好。不幸的是Excel依然是分配数据的标准样板。我会用它来检查数据或做最基本的数据清理和调整。

R(https://www.r-project.org)

我会在接下来的内容中再次提到我深爱的利器:R语言。R是一个开源免费的统计处理语言。统计学框架是不是听起来就已经超过了众人的理解范畴了?那就把它当作最受欢迎的数据处理程序。R拥有无数拓展包来拓展它的功能并且拥有非常有帮助的用户社区。

你可以通过R获取数据或者直接从开放的API数据接口获得数据,但是R真正闪光之处在于通过 tidyr 和dplyr等拓展包使你的数据成型。

分析数据

对于数据新闻而言,迅速探索数据是直观重要的,也就是指带着相应的问题来查询数据或找到数据中的模式和极值等。

数据探索这项工作会因为你探索数据发现新问题而不断重复。对我而言,没有比R更好地数据分析工具了。你可以非常迅速地使你的数据成型,并根据你的问题相适应地生成大量的数据图表。拓展包ggplot2(//ggplot2.org/ )对此尤其有帮助。

1462458466-5719-4fc2ca6fda83e2dde71190ef6d07

更重要的是,通过R markdown(rmarkdown.rstudio.com)你可以生成PDF和html格式的报告,包含了代码及结果图表。这不仅对于你的工作文档的生成,同时对你发布完整新闻而言都起着极大的作用。与科学报告类似,用于数据新闻的方法应当是明确、透明、可复验的。

图表成品化

静态数据可视化

R(ggplot2 + Inkscape/Illustrator)

用R自带生成的默认图标恐怕只会戳到工程师的点,然而只需要几行代码,你可以极大地提升图表的形态。

1462458466-5016-87d688e9c199000828381e30fd89

为图表配上文本和解释性文字通常都相当重要,当然这个步骤也可以用R以编程的方式来完成,但是如果你有许多说明需要补充,这项工作就会变得非常无聊枯燥。

R生成的图表可以以pdf或svg格式保存,再在 Inkscape (https://inkscape.org/en/ 这同样是一个开源免费的软件)/ Adobe Illustrator添加“说明层”。下图是我的一个操作案例。

1462458466-9156-d562a538ba6be01190ef76c66c07

(使用R + Inkscape完成)

在未来我会只用R来制作更多数据图。如果你要更加适应于移动端优先的战略,你可能会减少使用大型交互式图表而生产更多响应式矢量图。采用矢量图是因为你需要让你的图在任何屏幕尺寸中都看起来干净清晰。响应式设计也可以对不同尺寸的屏幕通过图层的增减进行适应性调整。下面的截图呈现了许多图表框,在实际网页中这些图表框会依据屏幕尺寸进行排列,更小的屏幕就会显示得更少。

1462458467-5429-f8dc8c9ee417ca11728b46102890

交互式数据可视化

1462458467-5826-95ca8348f830ce177f3e660952f2

1462458467-3428-a7869d9720886009c93d71cf50f2

交互式等值线图案例(用datawrapper绘制)

datawrapper(https://datawrapper.de/)

数据新闻≥富于想象力的数据可视化。我想人们应该都知道数据新闻远不止是好看奇特的数据可视化。数据新闻并不一定非得是用创造性的图表来承载信息。原始的柱状图或者折线图或许更能清晰地说明问题。因此我非常喜爱图表工具datawrapper。

它是开源免费的,但是通常会对一些响应式交互图表收费。编辑室内的所有记者几乎都在使用datawrapper。我们在主页中使用了适用于datawrapper图表层的格式因此我只需要按照代码生成图表而不用再花费时间来调整细节设计。最近datawrapper又扩展了图表选向:等值线图、气泡图、平面条形图、子弹图等。

1462458467-8759-728b268ee7a4cffcc3cec2fd2c90

R + rCharts / htmlwidgets 

d3.js(https://d3js.org/)是交互式数据可视化的利器。尽管我在javacript/d3.js并不精通并且我所在的媒体需要将图表制作成十种语言(包括自右向左阅读的阿拉伯语),在d3.js上为数据可视化编码有些太过消耗时间。

就我个人而言,我会在R的拓展包(诸如rCharts(//rcharts.io/) 和htmlwidgets(//hafen.github.io/htmlwidgetsgallery/))与javascript拓展包中二选一来制作交互式数据可视化作品。

当然,这样操作可视化的自由度和d3.js还是不同的,但我认为在可能性和定制性上所损失的价值可以用节省的时间来弥补回来。在同一个工作流的优势在于你的数据分析和数据图表产品化的代码可以在同一个基于相同基础代码的脚本中进行,这样可以重复操作且一旦需要更新数据就变得轻而易举。

R的两个拓展包 leaflet.js (主要用于绘制地图—https://rstudio.github.io/leaflet/) 或 Highchart (一个图表库—jkunst.com/highcharter/)提供了大量的交互式图表模式。非常值得一试。

1462458467-8594-1f305db2e72fae014c086f06f089

1462458468-7970-c93d284f6471983df8dcd00054f2

案例展示

下面就是一使用这些工具制作的数据可视化案例,链接附在图表下方:

1462458468-5160-c8fca7509d4bfb039245d7882190

//www.swissinfo.ch/eng/data-story_2015–when-the-wave-of-migrants-reached-europe/41844230

1462458468-6596-f01f15247243e7fe9925bc317d07

//www.swissinfo.ch/directdemocracy/explore-600-national-votes_how-direct-democracy-has-grown-over-the-decades/41481992

1462458468-9499-94eede12659f2af5e0fe99257e07

//www.swissinfo.ch/eng/asylum-policy_switzerland-s-defence-of-the-dublin-accords-is-not-a-coincidence/41970948

1462458469-9656-0a7bb99e24420dd162d9f3d3c989

//www.swissinfo.ch/eng/data_who-are-the-two-million-foreigners-living-in-switzerland-/41942052

以上就是我想要分享的,长度已经超出了我的预期,并且总觉得讲解这套工作流程比用起来更麻烦。而我也非常想知道其他数据新闻记者或团队对于更好更快地完工有怎样的好工具或好想法。

来自:百度新闻实验室

感谢支持199IT
我们致力为中国互联网研究和咨询及IT行业数据专业人员和决策者提供一个数据共享平台。

要继续访问我们的网站,只需关闭您的广告拦截器并刷新页面。
滚动到顶部