世界无烟日,知微数据联合财新数据可视化实验室推出“非平装烟盒”可视化专题,与你一同透视全球烟盒。从选题,到数据采集、分析、设计、撰稿、开发……来自世界各地的11670张烟盒图片如何与11670条数据一一对应?今天,我们来为你揭秘幕后的故事。
六一前夕,刷屏的那成千上万张烟盒,还记得吧?就是下面这张
《非平装烟盒》(项目链接:http://datanews.caixin.com/mobile/notobacco)
是财新数据可视化实验室为世界无烟日(5月31日)所做的专题策划。11670张烟盒图片,来自世界各地,与11670条数据一一对应。怎么做到的?
三个问题之后,没有秘密。
特别福利:作品涉及的烟盒图片相关数据已经在《非平装烟盒》项目末页提供下载链接。
Q1:这么多张烟盒图片,如何收集?
知微数据(数据采集):
首先确认目标站点的组织结构与目标信息所在的位置,利用Java语言下基于HttpClient、HtmlUnit、Jsoup、Selenium与BerkeleyDB为核心的采集平台以广度优先策略,(广度优先算法就是从种子链接开始,讲种子链接中包含的子链接提取出来,放入队列排队抓取,被处理过的链接需要放入Visited表,处理一个链接前需要先判定该链接是否存在于Visited表中,如果存在则认定为处理过的链接直接抛弃,循环往复。)开始对目标站点的图片链接进行遍历读取文件流并以BASE64的形式存入MongoDB数据库,同时对该图片文字信息特征进行数据索引。最终将图片输出以带有国别、品牌等信息为文件名的JPG/PNG图片并压缩打包。
Q2:从11670个烟盒,到11670条数据,都经历了些什么?
罗晨(数据分析、撰稿):
1. 分析之前,先做数字化
前序同事抓取了中国烟草网站的所有烟盒图片,每一张图片都用“地区+香烟类型”的格式来进行命名,这个命名实在太贴心了,帮我省掉了整理命名的麻烦步骤。作为数据分析人员,我首先用DOS命令获取了所有图片的名称,再利用Python给每一张图片重新以阿拉伯数字命名,在数字和字符串间建立了一一对应的关系,方便后期进行分类、抽样操作。
2. 物以类聚,色以群分
其实最开始的想法挺简单——打算以烟民的烟盒评分作为切入点,并没有想到用高大上的色彩分析。后来经过团队的讨论,并参考了清华大学向帆老师的春晚色彩分析(具体请见向帆的博客:《海王星上看“春晚”》),决定从烟盒的颜色着手。
颜色,不仅是直观的视觉感知,更是地区文化的偏好,譬如中国人对红色、黄色情有独钟,这种对于特定色彩的执着可以说是镶嵌在基因里了。之后面临的是烟盒颜色的处理问题,如果将烟盒做单纯拼接,那么会显得凌乱,难以发现规律。于是决定使用Python进行颜色提取,用了PIL(Python 3中改名为Pillow)模块后,发现用不复杂的代码就足以解决主色调提取的问题,顺利地得到了一万余张烟盒的主色调,数据格式是包含RGB数值的元组。
各地区的烟盒差异不仅体现在颜色上,也体现在视觉标识上。如果要自动化地从烟盒图片上识别形状,可能只有机器学习的方法,但是身为文科生的我并不会。所以就只好仰赖人工的内容分析了,选择了几个具有代表性的对比地区后,首先要做的是抽样(普查成本太高)。我的做法是对选中地区的烟盒图片进行简单随机抽样,然后自己构建类目对样本进行编码,最后用Excel和SPSS进行统计分析,得出统计结果。
(一点感受——烟盒色彩分析非常好玩,因为其中需要进行人工校验,所以基本把各种图片都浏览过一遍,发现很多特别神奇的包装,真可谓大开眼界。我认为这是一个纯探索性研究,没想到最后能得出许多有意义的结论,真的很感谢财新数据可视化实验室,让一名实习生可以有机会在一个创新方向上深挖,也感谢编辑老师在项目期间给我足够的时间,没有催稿,更感谢所有项目组的伙伴们,协同才是最优质的动力。)
Q3: 关于设计&前端开发,想说点啥?
佳昕(设计及开发):
这个项目的设计宗旨只一个——释放数据的魅力,别拘着。但并不容易……
开始的设计草图:
但是体会出一些问题,比如——
问题1:进入主题慢;
问题2:世界概况应该作为“辅助信息”放在后半部分
问题3:出于用户角度考量,可点击的色谱应该放在右侧,便于移动端用户操作。
(第一页那个奇怪的人形,其实是《志明与春娇》里对着两位主角喊“damai smoke”的港警,本来打算用一段gif扔出戒烟的主题,但后面觉得与主题调性不搭,遂……割爱删掉。)
和黄晨老师讨论后的设计草图:
增加电影脚本的感觉,利用动画快速回顾历年控烟日主题之后迅速进入主题,解释什么是平装烟盒,平装烟盒本应如何,再利用翻转效果展示“现实”却是怎样的。
1-2-4-2195个烟盒的设想很好的发挥了烟盒封面聚集起来给读者的视觉震撼,“数据来源于生活,回归到生活”是和黄晨老师讨论后令我印象深刻的一句话。
关于开发,开头动画利用css的动画效果,后面色谱生成与图片交互主要应用d3.js。最大的难点在于图片太多,移动端加载出现崩溃,一度考虑过只选取其中一部分烟盒图片配合点击,但觉得这样浪费了挖掘的图片,也有违数据真实,后面尝试把加载图片的工作放到点击动作之后,这样提高了加载效率。
不过成品中还是有很多细节需要敲打,根据不同机型的读者反馈,项目加载时间还是过长,在之后会继续跟进完善。
编辑絮语:
这个选题的灵感最初来自于20116年11月财新网的一篇报道,《全球烟盒警示面积排行 中国大陆仅列115位》,其中有一句话“中国大陆是世界上烟盒最漂亮的国家和地区之一”。什么是漂亮?红的,黄的,金灿灿的?色彩是最本源的可视化,直觉数据可视化用于展现出这所谓的“漂亮”是非常对路的。于是有了后面的工作。
过程中团队成员集思广益,有很多大胆突破的想法,经历了“从少到多,再从多到少”的迭代过程,有很多不错的想法最终囿于篇幅而被舍弃掉了。不论是数据新闻报道还是融媒体报道,要警惕陷入“看,我什么都会”的误区当中,一切技巧最终是服务于主题的。用产品语言说就是,我们既要知道我们要做什么,更要知道我们不做什么。
再次提醒福利:作品涉及的烟盒图片相关数据已经在《非平装烟盒》项目末页提供下载链接。
点击关键词查看精彩文章↓↓↓
数据报告:
YSL营销|微博双11|武亦姝与赵雷|抵制乐天事件|315舆情全盘点|网易云音乐乐评专列|共享单车|“美联航拖客”事件|小米6发布会预热营销|“喜茶”数据分析|阴阳师VS王者荣耀|美团歧视性招聘事件|菜鸟顺丰之争|
专题解读:
热点事件:
非法疫苗案|和颐酒店女生遇袭|年薪12万加税谣言|安徽铜陵爆炸|圆通北京站点异常|穿山甲公子|APA酒店|辱母杀人案|谢娜删张杰微博|黄小厨抄袭风波|我是范雨素”刷屏|深圳四胞胎|锤子发布会|医生被打“熊猫眼”事件梳理|美团招聘“地域歧视”|留学生演讲涉嫌“辱华”|女德讲座刷屏|毕业旅行变集体婚礼|
总结盘点:
2016年8月|2016年9月|2016年10月|2016年11月|2016年度事件盘点|2016年度谣言盘点|2016年度危机公关事件盘点|2017年1月|2017年2月|2017年3月|2017年4月|2017年5月 |
本报告由知微数据(zhiweidata.com)制作,报告中所有的文字、图片、表格均受有关商标和著作权的法律保护,部分文字和数据采集于公开信息,所有权为原著者所有。
未经本公司书面许可,任何组织或个人均不得以任何形式擅自复制、传递、转载本报告或向第三方实施许可,否则,知微数据将保留追究其一切法律责任之权利。
本报告内容受所采用数据、技术手段、研究方法等的影响,分析结果仅代表包括但不限于以上影响因素下的当时情形。受研究方法和数据获取资源的限制,本报告只为市场和客户提供基本参考,本公司对该报告的数据和观点不承担法律责任。本报告允许媒体和学术研究机构部分引用本报告数据和相关内容用以新闻报道和学术研究,但是必须保证所引用部分的完整性和准确性,并注明来源,本公司不承担因此引发的任何连带责任。