本文转自阮一峰 http://www.ruanyifeng.com/blog/2014/11/basic-charts.htmlhtml
"数据可视化"能够帮助用户理解数据,一直是热门方向。大数据
图表是"数据可视化"的经常使用手段,其中又以基本图表----柱状图、折线图、饼图等等----最为经常使用。spa
用户很是熟悉这些图表,但若是被问道,它们的特色是什么,最适用怎样的场合(数据集)?恐怕答得上来的人就很少了。htm
本文是电子书《Data Visualization with JavaScript》第一章的笔记,总结了六种基本图表的特色和适用场合,很是好地回答了上面的问题。blog
进入正题以前,先纠正一种误解。排序
有人以为,基本图表太简单、太原始,不高端,不大气,所以追求更复杂的图表。可是,越简单的图表,越容易理解,而快速易懂地理解数据,不正是"数据可视化"的最重要目的和最高追求吗?ip
因此,请不要小看这些基本图表。由于用户最熟悉它们,因此只要是适用的场合,就应该考虑优先使用。get
柱状图是最多见的图表,也最容易解读。it
它的适用场合是二维数据集(每一个数据点包括两个值x和y),但只有一个维度须要比较。年销售额就是二维数据,"年份"和"销售额"就是它的两个维度,但只须要比较"销售额"这一个维度。io
柱状图利用柱子的高度,反映数据的差别。肉眼对高度差别很敏感,辨识效果很是好。柱状图的局限在于只适用中小规模的数据集。
一般来讲,柱状图的X轴是时间维,用户习惯性认为存在时间趋势。若是遇到X轴不是时间维的状况,建议用颜色区分每根柱子,改变用户对时间趋势的关注。
上图是英国足球联赛某个年度各队的赢球场数,X轴表明不一样球队,Y轴表明赢球数。
折线图适合二维的大数据集,尤为是那些趋势比单个数据点更重要的场合。
它还适合多个二维数据集的比较。
上图是两个二维数据集(大气中二氧化碳浓度,地表平均气温)的折线图。
饼图是一种应该避免使用的图表,由于肉眼对面积大小不敏感。
上图中,左侧饼图的五个色块的面积排序,不容易看出来。换成柱状图,就容易多了。
通常状况下,老是应该用柱状图替代饼图。可是有一个例外,就是反映某个部分占总体的比重,好比贫穷人口占总人口的百分比。
散点图适用于三维数据集,但其中只有两维须要比较。
上图是各国的医疗支出与预期寿命,三个维度分别为国家、医疗支出、预期寿命,只有后两个维度须要比较。
为了识别第三维,能够为每一个点加上文字标示,或者不一样颜色。
气泡图是散点图的一种变体,经过每一个点的面积大小,反映第三维。
上图是卡特里娜飓风的路径,三个维度分别为经度、纬度、强度。点的面积越大,就表明强度越大。由于用户不善于判断面积大小,因此气泡图只适用不要求精确辨识第三维的场合。
若是为气泡加上不一样颜色(或文字标签),气泡图就可用来表达四维数据。好比下图就是经过颜色,表示每一个点的风力等级。
雷达图适用于多维数据(四维以上),且每一个维度必须能够排序(国籍就不能够排序)。可是,它有一个局限,就是数据点最多6个,不然没法辨别,所以适用场合有限。
下面是迈阿密热火队首发的五名篮球选手的数据。除了姓名,每一个数据点有五个维度,分别是得分、篮板、助攻、抢断、封盖。
画成雷达图,就是下面这样。
面积越大的数据点,就表示越重要。很显然,勒布朗·詹姆斯(红色区域)是热火队最重要的选手。
须要注意的时候,用户不熟悉雷达图,解读有困难。使用时尽可能加上说明,减轻解读负担。
图表 | 维度 | 注意点 |
---|---|---|
柱状图 | 二维 | 只需比较其中一维 |
折线图 | 二维 | 适用于较大的数据集 |
饼图 | 二维 | 只适用反映部分与总体的关系 |
散点图 | 二维或三维 | 有两个维度须要比较 |
气泡图 | 三维或四维 | 其中只有两维能精确辨识 |
雷达图 | 四维以上 | 数据点不超过6个 |
(完)