數據可視化:基本圖表

jopen 10年前發布 | 13K 次閱讀 圖表

作者:  阮一峰

        "數據可視化"可以幫助用戶理解數據,一直是熱門方向。

        圖表是"數據可視化"的常用手段,其中又以基本圖表----柱狀圖、折線圖、餅圖等等----最為常用。

數據可視化:基本圖表

        用戶非常熟悉這些圖表,但如果被問道,它們的特點是什么,最適用怎樣的場合(數據集)?恐怕答得上來的人就不多了。

        本文是電子書《Data Visualization with JavaScript》第一章的筆記,總結了六種基本圖表的特點和適用場合,非常好地回答了上面的問題。

        零、序言

        進入正題之前,先糾正一種誤解。

        有人覺得,基本圖表太簡單、太原始,不高端,不大氣,因此追求更復雜的圖表。但是,越簡單的圖表,越容易理解,而快速易懂地理解數據,不正是"數據可視化"的最重要目的和最高追求嗎?

        所以,請不要小看這些基本圖表。因為用戶最熟悉它們,所以只要是適用的場合,就應該考慮優先使用。

        一、柱狀圖(Bar Chart)

        柱狀圖是最常見的圖表,也最容易解讀。

數據可視化:基本圖表

        它的適用場合是二維數據集(每個數據點包括兩個值x和y),但只有一個維度需要比較。年銷售額就是二維數據,"年份"和"銷售額"就是它的兩個維度,但只需要比較"銷售額"這一個維度。

        柱狀圖利用柱子的高度,反映數據的差異。肉眼對高度差異很敏感,辨識效果非常好。柱狀圖的局限在于只適用中小規模的數據集。

        通常來說,柱狀圖的X軸是時間維,用戶習慣性認為存在時間趨勢。如果遇到X軸不是時間維的情況,建議用顏色區分每根柱子,改變用戶對時間趨勢的關注。

數據可視化:基本圖表

        上圖是英國足球聯賽某個年度各隊的贏球場數,X軸代表不同球隊,Y軸代表贏球數。

        二、折線圖(Line Chart)數據

        折線圖適合二維的大數據集,尤其是那些趨勢比單個數據點更重要的場合。

數據可視化:基本圖表

        它還適合多個二維數據集的比較。

數據可視化:基本圖表

        上圖是兩個二維數據集(大氣中二氧化碳濃度,地表平均氣溫)的折線圖。

        三、餅圖(Pie Chart)

        餅圖是一種應該避免使用的圖表,因為肉眼對面積大小不敏感。

數據可視化:基本圖表數據可視化:基本圖表

        上圖中,左側餅圖的五個色塊的面積排序,不容易看出來。換成柱狀圖,就容易多了。

        一般情況下,總是應該用柱狀圖替代餅圖。但是有一個例外,就是反映某個部分占整體的比重,比如貧窮人口占總人口的百分比。

數據可視化:基本圖表

        四、散點圖(Scatter Chart)

        散點圖適用于三維數據集,但其中只有兩維需要比較。

數據可視化:基本圖表

        上圖是各國的醫療支出與預期壽命,三個維度分別為國家、醫療支出、預期壽命,只有后兩個維度需要比較。

        為了識別第三維,可以為每個點加上文字標示,或者不同顏色。

數據可視化:基本圖表

        五、氣泡圖(Bubble Chart)

        氣泡圖是散點圖的一種變體,通過每個點的面積大小,反映第三維。

數據可視化:基本圖表

        上圖是卡特里娜颶風的路徑,三個維度分別為經度、緯度、強度。點的面積越大,就代表強度越大。因為用戶不善于判斷面積大小,所以氣泡圖只適用不要求精確辨識第三維的場合。

        如果為氣泡加上不同顏色(或文字標簽),氣泡圖就可用來表達四維數據。比如下圖就是通過顏色,表示每個點的風力等級。

數據可視化:基本圖表

        六、雷達圖(Radar Chart)

        雷達圖適用于多維數據(四維以上),且每個維度必須可以排序(國籍就不可以排序)。但是,它有一個局限,就是數據點最多 6 個,否則無法辨別,因此適用場合有限。

        下面是邁阿密熱火隊首發的五名籃球選手的數據。除了姓名,每個數據點有五個維度,分別是得分、籃板、助攻、搶斷、封蓋。

數據可視化:基本圖表

        畫成雷達圖,就是下面這樣。

數據可視化:基本圖表

        面積越大的數據點,就表示越重要。很顯然,勒布朗·詹姆斯(紅色區域)是熱火隊最重要的選手。

        需要注意的時候,用戶不熟悉雷達圖,解讀有困難。使用時盡量加上說明,減輕解讀負擔。

        七、總結

 <th>維度</th>

 <th>注意點</th>

</tr>

</thead>

 <td>二維</td>

 <td>只需比較其中一維</td>

</tr>

<tr> 
 <td>折線圖</td>

 <td>二維</td>

 <td>適用于較大的數據集</td>

</tr>

<tr> 
 <td>餅圖</td>

 <td>二維</td>

 <td>只適用反映部分與整體的關系</td>

</tr>

<tr> 
 <td>散點圖</td>

 <td>二維或三維</td>

 <td>有兩個維度需要比較</td>

</tr>

<tr> 
 <td>氣泡圖</td>

 <td>三維或四維</td>

 <td>其中只有兩維能精確辨識</td>

</tr>

<tr> 
 <td>雷達圖</td>

 <td>四維以上</td>

 <td>數據點不超過 6 個</td>

</tr>

</tbody>

</table>

                    <span id="shareA4" class="fl">                  
                        </span>
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!
圖表
柱狀圖