马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本文内容为从天文学家到数据可视化专家养成记。 我经常收到很多人的邮件,询问我步入数据可视化道路的各种问题。在我将自己的故事写了九遍之后,我想在博客上公开这个故事也许会更轻松一些。这样,我也能够叙述得更加详尽,甚至添加一些图片。 从天文学家到数据科学家(我学习R的时候)再到自学而成的数据可视化设计师,这一过程中最大部分时间我都在做大量的数据可视化工作,我还花了很多业余时间学习网络语言和D3,阅读了最佳实践的相关书籍,参与线上数据可视化社区,并在各种学术会议或见面会中阐释自己对于这一课题的热爱。现在,我在为Adyen工作的同时,也是一个数据可视化的兼职自由工作者。 至于全部的细节,先看一下我在几年前做的各种表格的图片,再继续阅读……… 2015 – 2011| 以天文工作者的身份开始 高中毕业之后我进入莱顿大学学习天文学。我不仅对这一领域有兴趣,同时对数学和物理也有极大热情。大学第一年,我修了一门C++课程,这也是我的编程入门课程。(在我设计Neopets宠物网页之前的几年我确实学过简单的HTML 和CSS, 但是到那时我基本都忘干净了)。我非常喜欢编程带来的挑战:通过设置变量,循环,使用if-else语句就可以做很多事情,比如提供你的生日,就可以计算出那天是星期几。但是尽管我十分喜欢那门课程(或许并不是特指C++),在之后的三年我并没有做任何编程相关的事情。 在我大学最后一年做毕业设计的时候,这也是我真正意义上的第一个研究课题。为了准备毕设,我整个大三都在学习IDL,一门天文学领域中(过去)常常使用的编程语言(而且没有在其他领域使用......)。很久之后我发现,IDL和R语言很相似,我非常喜欢它,掌握的比C++好。在接下来的半年以及随后两年的天文学硕士课程学习中,我选择做理论研究,所以更多的使用IDL。为了完成硕士论文,我甚至整天都在编程,通过模拟分析结果。我也学了一点SQL,因为我需要它从模型数据库中获取正确数据。但别理解错了,这没有让我成为编程开发方面的专家,IDL只是一个数据分析工具。我并不会编写APP或者工具,我只会写一些可以分析数据并生成数据和图像(就像现在使用R一样)的脚本。 我找出了我曾经为了本科和硕士毕业而写的3篇论文。下面几张图片就来自论文中的一些结果。具体内容记不清楚了,但是上面那些图的最右边一张图中的那些圆圈和下面一排图最右侧的两个散布图是我自己分析生成的结果,其他的图都是采用标准方式显示一系列特定数据。 2012| 成为顾问/数据科学家 我觉得自己并不想继续深造攻读PhD。尽管我很喜欢做研究,但是我十分痛恨写论文。同时我也想接触一些比较具象的、更多样化的事物,让世界上更多的人知道我做的事情。所以我开始找工作。当时Deloitte顾问团队刚刚在他们的商业智能部门成立了一个分析小组,我因此也进入分析小组,找到了一份很适合自己的工作。 在Deloitte, 我的工作还是分析大量的数据,但现在这些数据都是关于人们,或是他们购买的物品,或是他们的房屋贷款,全都是和生活十分贴近的东西。因为不能再使用IDL了,我不得不学习新的数据分析工具。在我在Deloitte工作的第一年学了6种不同的语言,主要原因是我必须要面向客户需要,比如QlikView自带的SQL版本,SAS(这不是我最喜欢的),VBA(甚至更糟糕),以及后来学的R。 R以及RStudio立刻就成为了我不可或缺的工具。它和IDL有相似的设计原理。你可以逐行运行代码而不需要编译整个脚本或一次性运行全部代码。我发现逐行运行代码很方便调试或者理解其他人写的代码。并且R本就是用来作为数据分析工具的。它有大量的工具包来帮助你实现一些功能,从大量数据的准备、文本挖掘、画图(使用ggplot2)到更多复杂抽象的功能比如计算地球上两个地点之间的弧度距离,或者是一个连接Google 趋势的API。 想要掌握ggplot2的“链接”思想的要领需要花费一些时间,它可以通过不同程度的堆叠不同选项来定义图表的外观。但是现在回顾起来,就可以理解得更深刻,并且它为我们提供了更多的可能。你需要多参考stackOverflow (或者浏览ggplot的在线文档【http://docs.ggplot2.org/current/index.html】)来找到实现某些具体功能的例子。另一方面,你也可以将生成的图像保存为PDF并上传到Illustrator来做一些最后的调整。然而,我也是在3年后一次偶然的机会之后才开始这么做的。 上下两个图中是我第一年使用R做的图表。我认为这些图表都值得保存在我的个人电脑上,哈哈。当然我也做了上百张巨简单也巨丑的图,这些是不会保存的。条形图、折线、散布图等,这些都可以帮助我们更好的理解数据。 2013 | 意识到d3的存在 2013年二月,我去旧金山湾区参加了有关于数据科学的Strata 会议【https://conferences.oreilly.com/strata/strata2013】。在那里,我加入了一个”d3入门” 的讨论组。之前从没有听说过d3,我立刻就被吸引了。回家之后,我花了接下来一个星期的时间试图建立我自己的可以在不同变量之间切换并可根据鼠标点击进行变换的交互式散布图。是的,我花了整整一周的休息时间从零开始去建立这个图。因为我完全不懂Java,对HTML和CSS的掌握也有限。同时,掌握d3的逻辑链和输入+更新+退出的思维方式也是另一大难点(我认为我至少花了一年的时间才完全理解)。这一块学起来很艰难,尽管很长时间里我只能取得一小点进步,但是我还是为d3可以创造的无限可能而痴迷不已。 经过那一次的严酷考验,我已经学会了如何从已有的例子开始尝试,不断调整使之适用于自己的数据(通常可以在bl.ocks.org上找到,非常棒的网站,特别是在浏览blockbuilder.org的时候,你可以找到很多代码块!)。有时候,仅仅是把自己的数据显示出来就十分复杂。我有时候会被很简单的问题困住,因为不知道到底哪里出了错。最后我意识到,在Java中对象的嵌套数组在复制到新的变量中仍保持可连接状态……抓狂。 接下来一年我没有频繁使用d3。工作中为了快速完成任务有太多需要学习的东西。之后发现R 曲线图比较快。 我们商业智能部门使用比较多的另一个工具是QlikView,这是一个可以创建交互式仪表板的程序,它也可以下载并安装其他基于Java的可视化扩展程序。2013年春季,QlikView组织了一次关于制作最优扩展程序的竞赛。我和另外两个同事觉得很有意思就参加了。我建议使用d3, 从d3中获取图表格式并在QlikView环境下使用。在这里我省略细节,但是结果表明使d3网络图表在QlikView选项下工作是十分困难的(我做了一个拖放球然而最后没有完成。但是我确实在网上找到了一个可以实现这个网络的demo【http://us-d.demo.qlik.com/QvAJAX ... Network%20Chart.qvw】)。很遗憾,我们最后以3票落差屈居第二,但是这也是的我在d3相关知识方面又了巨大飞跃。 2014 | 发现自己的兴趣 这样持续学习一直到2014年 11月。期间,在大工程当中,因为有足够多的时间去创建(或者调整一些其他我喜欢的东西),我也做了几个基于d3的可视作品。比如适用于我经常使用的自组织映射算法的六角形热图,以及建立热门购买物品之间关系的可视化网络图和关联分析的结果(这个可视化作品主要基于 Raphaël Velt 【https://marketplace.gephi.org/plugin/gexf-js-web-viewer/】的工作) 。但是我仍然认为自己是一个数据科学家。问题是,我不确定我是否像之前那样喜欢这个工作。为了将预测模型的准确度提高1%,我觉得挫败感多于成就感。 2015 | 成为数据可视化设计师 2016 | 被雇佣为数据可视化设计师 2015年12月,由于一些和数据可视化领域无关的原因,我换了一份工作,加入AdYen成为全职的数据可视化设计师。他们为我安排了数据分析的岗位,但是我告诉他们我换工作的条件就是想专攻数据可视化。他们看了我的网站后十分喜欢上面的内容,最终同意我可以加入数据可视化工作部分(所以说,我花时间更新我的网站最后还是有回报的)!他们已经开始使用d3为客户做仪表盘并想做进一步优化。 我在AdYen的大部分时间,要么是更新旧的仪表盘,要么是创建新的。调查最终使用者的需求,了解可以获得的数据,做出(粗略的)设计,有时也会将其部署到AdYen的环境中(2-3个前端同事实现了我的大部分仪表盘设计)。 正是在这里,我开始理解我更多的是一个原型设计者。我对网页开发的了解程度并不足以让我和负责网页开发的同事并肩。但是在数据可视化方面,在他们一筹莫展的时候,我可以设计并独立建立实例。所以几个月以后,我不再负责切实在 AdYen环境中部署内容,并更多的专注于设计和提出新思路。 2016 | 与其他人更加深入的交流 2016年是我发现我真的喜欢表现出我对数据可视化的热爱的年份(虽然仍然超级紧张,呵呵)。四月份的OpenVis【https://openvisconf.com/2016/】是我第一次参加国际会议,但是到了2016年底,我居然刚在墨尔本CSS会议【http://2016.cssconf.com.au/】发言完毕并飞回家!(这是我在2016年初没有想到的)。这两个会议我都申请了演讲资格,但我认为(并不确定)是我的博客上分享的项目经历,还有更重要的是教程,使得OpenVis社团给了我这次机会:)当然,有好的想法是最重要的,即使你没有博客。对于与会者的选择是完全匿名的,不论是谁,想法才是被挑选的依据。这是菜鸟级的人参与进来的好方法。 2016年,我开始与shirley Wu 合作,他是一个来自旧金山data sketches的优秀数据可视化设计师, 在数据矢量【http://www.datasketch.es/】上每月针对相同的话题创建更加深入的数据可视化,并写出数据收集、准备、构思以及编程实现的过程。在我写这篇文章时候,我们已经做了9个月,这期间我收获了太多。不仅是技术上的,也有思想上的创新。如果你真的想要学习数据可视化,那没有什么可以打败你。 2017 | 成为自由工作者 然而,由于我在AdYen仍然有很多想要探索的内容,同时我也不确定我所偏爱的项目是否有足够好的市场,所以我采用兼职的工作方式。在AdYen工作3天,剩下两天(如果算上周末有还有另外两天)做自由工作者。 顺带一提,关于我“偏爱的项目类型”,指的是更加富有创造性的数据可视化。我决定不再做有关仪表盘设计或构建的工作,因为我已经做得够多了。 至于现在,一切都进展顺利。忽略合同管理带来的烦恼,我的工作十分有趣,并且再次多样化。但是由于我仅做了3个月的自由工作者,我希望一年之后可以进一步扩展最后一个部分。 总结 好啦,这就是关于我的数据可视化之路的一个足够长篇的陈述了,我是什么时候以及如何学习掌握工具来构建可视化作品的,还有每个阶段的一些(令人尴尬的)图表。以及我抓住的一些看似可怕或者浪费时间却受益匪浅的机会。希望我的故事能对你们深入研究数据可视化领域有所启发,如果这是你想要的东西的话。亦或了解他人是如何一步一步摸索就已经很棒了,对我而言,这并不是一条清晰的路径,努力与热情——这是每个人都有的东西——使我最终达到我现在这个位置:以数据可视化作为主职工作。 译者介绍 韩霜,墨尔本大学生物医学工程硕士在读学生。对基因组研究以及深度学习有浓厚兴趣,不断尝试通过深度学习系统处理大量基因数据,希望在精准医疗领域有所建树。数据派翻译组志愿者。 来源:THU数据派
|