承接上文——用数据说话(一),我们讲了用数据在职场上沟通的重要性和一些实操注意事项。本文我们focus在具体的图表上,教你一些实用技巧,用最简洁的图做最有力的表达。数据分析可视化是一项蛮需要注意细节的工作,把细节处理好,能有事半功倍的效果,所以本文也提了很多看起来很小但用起来却效果奇佳的tips,要仔细阅读哦。 作者注: 本文是笔者结合工作实际案例的总结,但由于不能分享工作中的实例,所以一些图例是从Tableau Public找的类似例子。Tableau Public也是非常好的学习资源,大家可以从中汲取很多作图灵感。 请读者原谅笔者中英混杂的文风和日渐退化的中文表达。 干货满满,不看也就损失亿点点 。 表格是最基本的数据展示方式,它虽然看起来信息量很大有很多数字,也很普通不高大上,但在实际的商业场景下也必不可少,因为: 1)它很简单,人人都会读表,一行一列就产生一个数,不需要动过多脑子理解它。 2)它提供了读者需要了解的足够细致的信息。 表格的适用场景:不需要展示很多数据(行/列太多都不适合用table做presentation); 表格的元素主要是header(表头)和它下面的 value。上次讲到了granularity(数据的颗粒度),而一个 table的granularity是由categorical列决定,如表1就是城市和月份两个类别列决定了销售额的粒度是一个城市每月的数值。 表1 crosstab是以categorical values作为列名(header)的table,如表2 是由表1 pivot后的data。(BTW 数据透视表(pivot table)是Excel基本技能,好用还简单,不会的朋友赶紧补补课) 表2 上述的两个表有一个明显的问题,停下来思考一下你发现端倪了吗?这和我接下来要说的有关 - 做出好看便于理解的table还是有技巧的: 1)当数字超过千位,每3位要加”,”标识符以更好判断数字大小; 2)当数字成千上百万甚至十亿的时候,你也许不需要精确到个位,这时候可以用K(千),M(百万),B(十亿)来简化数字,便于读者阅读和比较; 3)金融数字一般在header(表头)加货币符号如$。 表格的限制:不能看出pattern和trends。 进阶版的table:heatmap。 给数字加上颜色能一眼判断出大小不同,但注意当表中有一个outlier(比如数巨大),其他数之间的区别就会被bias而看不出差别。 条形图是人们最熟悉的图,人们可以通过他快速的比较大小,甚至是很细微的大小。(如果用pie chart在这里就很难看出门店三、四的差别,但barchart却看得很清楚:四比三要低,后面会讲pie chart更适合的使用场景) 条形图的适用场景:当你有至少一个categorical variable和一个numeric variable。(不知道他们区别的宝宝请去看数据分析101那篇文章) 分类:有horizontal bar和vertical bar chart,当你的categorical values很长,用horizontal bar chart更好,以避免在vertical bar chart的x轴文字倾斜,增加读者阅读难度。如图4。Note: 1)把label放bar内侧更不容易影响读者对bar长度的判断,或者像Keith做的把数值label放到了Y轴左侧。 2)好的条形图会按数值大小排序。 图4 Recruiting Efficiency by Keith Dykstra 关键元素:横纵坐标轴,数值的坐标轴必须从0开始(如图5)不然我们会有错误的判断从而做出错误的决策,比如实际上A店的sales是B店的80%,但坐标轴从50K开始,看起来A店只有B的60%,这夸大了他们的差距。 图5 错误示例 进阶版条形图 当你有多个类别(categories)时,类别的顺序在条形图上变得重要,顺序取决于你的主要问题是什么。例如我们有不同性别的客户对意面的偏好的人数统计,如果我们想知道男性还是女性更喜欢吃意面,用图6的顺序更直观:看喜欢吃意面的人里,谁占比更多。 图6 如果我们更关注每个性别的消费者中,喜欢吃意面的差别,图7更能直接回答这个问题。 图7 stacked bar chart是用颜色区分不同类别,但它的问题就是stack 3个或者更多类别的时候除了以坐标轴起始的第一个category,其他的类别不在一个起点不好比较大小。 图8 London Bus Safety Performance by Thi Ho 注意:条形图本身就有了区分类别的属性,大部分情况下不需要用不同的颜色来区分类别,相反当条(类别)很多的时候,添加颜色会加重读者的阅读负担。 同时当条的长短已经表示数值的大小时,就不要用渐变色同样表示一个列的值大小,因为: 1)读者需要花更多的时间想这个颜色是什么意思。 2)这会夸大数值本身的意义,因为你用了2种元素(长度和颜色)去表示一个数据的大小。 bar chart变种 histogram,用于看数据分布,要求有一列numeric variable,横坐标把这些连续的数值型数据合成bins,y轴记录这个bin里的数出现的次数。 Know Your Beans (overlapping histograms with comparison parameters) By Kevin Wee 黃克文 100% stacked bar chart 用于在一个类别列里看每个类别对它的贡献或占比 waterfall bar chart 图11 100% Stacked Bar Chart & Waterfall Chart By Shilpa N When not to use bar chart: 超过两个category列,之前说过好的图是不需要读者太多反应和消化的,能一眼看明白的最好,太多不同level的类别变量(列)在一个图is too much information。 要data points连一起show trends的图 (line/area chart更合适)。
适用场景:有ordinal data(有顺序的类别)比如常见的时间、受教育的等级、职位等级等。
技巧:
highlight certain parts of the data,比如你有某产品3年的销售额,想看每年过节期间的变化,可以用阴影highlight节日的时间段。
Dynamic Reference band By Rajeev Pandey
如果你想看seasonality,可以按月份作为横轴,不同年份用不同的line表示,这样既可以看每年的trend,也可以看不同年同时间的差距。
a weekly Year-over-Year line chart? By Kyle Yetter
折线图变种:
slope charts:当category很多也即lines很多的时候,会增加读者对图的理解难度,因为不同的线相互缠在一起,但是如果你只看重2个时间节点前后的变化,slope chart可以在即使多条lines的情况下通过斜率更一目了然的表达数据前后的变化。比如不同产品促销前后的销售额变化来看促销活动的作用。
Line Dancing By Jeffrey Shaffer
area chart是line chart+height元素。whether to use a stacked area chart depends on 你想强调什么,stacked area chart可以看到累积的结果,basically只能比较以0为横坐标的类别,其他类别起始线不同很难比较,甚至会misleading(比如实际减少了,但是看不出变少)。普通的area chart可以更好地比较每个category自己的变化。
Line Dancing By Jeffrey Shaffer
很强大的可视化图形,因为你可以叠加很多buff在一张图上,比如:
改变点的颜色表示不同的类别,这里可以结合类别的属性选择颜色以减少读者在散点图和legend之间来回切换,比如你的类别是饿了么和美团外卖,就可以分别用蓝色和黄色表示(因为logo颜色)。
注意不要用过多的颜色表示不同的类别,会增加读者的阅读负担,根据你关注问题的不同,这时可以结合2个categorical fields,然后颜色按高一级的类别来区分,比如下图,本来有2个conference(AFC和NFC),每个conference下有4个division(东南西北),一共8个类别,作者每个类别给了一个颜色,颜色太多不能让读者很好的看出每个group的点的分布,其实颜色按AFC和NFC分成两种会更容易在区分不同的组的前提下看出各自turnover margin(X)和win %(Y)的关系。
(The American Football Conference (AFC) is one of the two conferences of the National Football League (NFL), the highest professional level of American football in the United States. The AFC and its counterpart, the National Football Conference (NFC), each contain 16 teams with 4 divisions.)
NFL Win Percentage Scatter Plots By Kevin Flerlage
当你的类别是ordinal data(前面刚提过),就可以用gradient color,渐变色;
当你的类别有一个threshold,你就可以用diverging colors(高于threshold用一个颜色,低于用另一个颜色)。
给点加borders以更清晰的区分这些点当它们重合的时候。
你还可以用不同的形状区分不同的类别,但注意颜色对人们的感知比形状更强烈,人们更容易区分类别。
适用场景:x y轴都要是连续型变量,用于发现2变量之间的关系,比如x越大y越大,说明x和y正相关,但是注意:
1)相关性不等于因果性。
2)不是所有的散点图的变量间都有相关性。
当散点图的2个变量间没有相关性,可以考虑进阶画成4象限,比如customer frequency和monetary的关系。
4 Quadrant Colors Scatter Plot By Sudarshan Dhiman
散点图还可以帮助发现outliers,方便你remove them或者做进一步调查为什么有outlier。
适用场景use case:只有很少的类别时,最好是2个,可以highlight一个类别,如下图。(这里用的donut chart做示例,和pie chart类似,只不过中间是圈,有时会把highlight的百分比写在圈内)
By Rajeev Pandey
技巧:
需要按pie的大小从大到小排序;
除了从其实竖线开始的1/4,1/2,和3/4能被人们很快识别,我们需要加labels(类别和百分比)去理解每个pie的大小;
不要用pie charts研究百分比随时间的变化,用line charts。
发表评论 取消回复