4種更快更簡單實現Python數據可視化的方法

數據可視化是數據分析或機器學習項目中十分重要的一環。一般,你須要在項目初期進行探索性的數據分析(EDA),從而對數據有必定的瞭解,並且建立可視化確實可使分析的任務更清晰、更容易理解,特別是對於大規模的高維數據集。在項目接近尾聲時,以一種清晰、簡潔而引人注目的方式展現最終結果也是很是重要的,讓你的受衆(一般是非技術人員的客戶)可以理解。機器學習

讀者可能閱讀過我以前的文章「5 Quick and Easy Data Visualizations in Python with Code」,我經過那篇文章向你們介紹了 5 種基礎的數據可視化方法:散點圖、線圖、直方圖、條形圖和箱形圖。這些都是簡單而強大的可視化方法,經過它們你能夠對數據集有深入的認識。在本文中,咱們將看到另外 4 個數據可視化方法!本文對這些方法的介紹會更詳細一些,能夠在您閱讀了上一篇文章中的基本方法以後接着使用,從而從數據中提取出更深刻的信息。ide

熱力圖學習

熱力圖(Heat Map)是數據的一種矩陣表示方法,其中每一個矩陣元素的值經過一種顏色表示。不一樣的顏色表明不一樣的值,經過矩陣的索引將須要被對比的兩項或兩個特徵關聯在一塊兒。熱力圖很是適合於展現多個特徵變量之間的關係,由於你能夠直接經過顏色知道該位置上的矩陣元素的大小。經過查看熱力圖中的其餘點,你還能夠看到每種關係與數據集中的其它關係之間的比較。顏色是如此直觀,所以它爲咱們提供了一種很是簡單的數據解釋方式。ui

25804185596cce0ce0bf920f4fdf1231a7098e5f

如今讓咱們來看看實現代碼。與「matplotlib」相比,「seaborn」能夠被用於繪製更加高級的圖形,它一般須要更多的組件,例如多種顏色、圖形或變量。「matplotlib」能夠被用於顯示圖形,「NumPY」可被用於生成數據,「pandas」能夠被用於處理數據!繪圖只是「seaborn」的一個簡單的功能。spa

 

二維密度圖code

二維密度圖(2D Density Plot)是一維版本密度圖的直觀擴展,相對於一維版本,其優勢是可以看到關於兩個變量的機率分佈。例如,在下面的二維密度圖中,右邊的刻度圖用顏色表示每一個點的機率。咱們的數據出現機率最大的地方(也就是數據點最集中的地方),彷佛在 size=0.5,speed=1.4 左右。正如你如今所知道的,二維密度圖對於迅速找出咱們的數據在兩個變量的狀況下最集中的區域很是有用,而不是像一維密度圖那樣只有一個變量。當你有兩個對輸出很是重要的變量,而且但願瞭解它們如何共同做用於輸出的分佈時,用二維密度圖觀察數據是十分有效的。對象

ae9419faa1348a49758c7227cc82902a2634f74f

事實再次證實,使用「seaborn」編寫代碼是十分便捷的!這一次,咱們將建立一個偏態分佈,讓數據可視化結果更有趣。你能夠對大多數可選參數進行調整,讓可視化看結果看起來更清楚。blog

 

蜘蛛網圖索引

蜘蛛網圖(Spider Plot)是顯示一對多關係的最佳方法之一。換而言之,你能夠繪製並查看多個與某個變量或類別相關的變量的值。在蜘蛛網圖中,一個變量相對於另外一個變量的顯著性是清晰而明顯的,由於在特定的方向上,覆蓋的面積和距離中心的長度變得更大。若是你想看看利用這些變量描述的幾個不一樣類別的對象有何不一樣,能夠將它們並排繪製。在下面的圖表中,咱們很容易比較復仇者聯盟的不一樣屬性,並看到他們各自的優點所在!(請注意,這些數據是隨機設置的,我對復仇者聯盟的成員們沒有偏見。)遊戲

a8d614789e4d40b70c6e94929fc9c712812753ef

在這裏,咱們能夠直接使用「matplotlib」而非「seaborn」來建立可視化結果。咱們須要讓每一個屬性沿圓周等距分佈。咱們將在每一個角上設置標籤,而後將值繪製爲一個點,它到中心的距離取決於它的值/大小。最後,爲了顯示更清晰,咱們將使用半透明的顏色來填充將屬性點鏈接起來獲得的線條所包圍的區域。

 

樹狀圖

咱們從小學就開始使用樹狀圖(Tree Diagram)了!樹狀圖是天然而直觀的,這使它們容易被解釋。直接相連的節點關係密切,而具備多個鏈接的節點則不太類似。在下面的可視化結果中,我根據 Kaggle 的統計數據(生命值、攻擊力、防護力、特殊攻擊、特殊防護、速度)繪製了一小部分口袋妖怪遊戲的數據集的樹狀圖。

所以,統計意義上最匹配的口袋妖怪將被緊密地鏈接在一塊兒。例如,在圖的頂部,阿柏怪 和尖嘴鳥是直接鏈接的,若是咱們查看數據,阿柏怪的總分爲 438,尖嘴鳥則爲 442,兩者很是接近!可是若是咱們看看拉達,咱們能夠看到其總得分爲 413,這和阿柏怪、尖嘴鳥就具備較大差異了,因此它們在樹狀圖中是被分開的!當咱們沿着樹往上移動時,綠色組的口袋妖怪彼此之間比它們和紅色組中的任何口袋妖怪都更類似,即便這裏並無直接的綠色的鏈接。

c06be07017fc374ffd3ec52eff2886bd0ff2f2e6

對於樹狀圖,咱們實際上須要使用「Scipy」來繪製!讀取數據集中的數據以後,咱們將刪除字符串列。這麼作只是爲了使可視化結果更加直觀、便於理解,但在實踐中,將這些字符串轉換爲分類變量會獲得更好的結果和對比效果。咱們還設置了數據幀的索引,以便可以恰當地將其用做引用每一個節點的列。最後須要告訴你們的是,在「Scipy」中計算和繪製樹狀圖只須要一行簡單的代碼。

https://yq.aliyun.com/articles/675086?spm=a2c4e.11153940.blogcont675213.34.3e9d5bbamphvu7

相關文章
相關標籤/搜索