博客專欄

EEPW首頁 > 博客 > Python數(shù)據(jù)可視化:如何選擇合適的圖表可視化?

Python數(shù)據(jù)可視化:如何選擇合適的圖表可視化?

發(fā)布人:美男子玩編程 時間:2022-11-08 來源:工程師 發(fā)布文章

最近在學(xué)習(xí)嵌入式Linux,沒系統(tǒng)掌握前暫時沒辦法輸出相關(guān)的博文,最近準(zhǔn)備先分享一些Python數(shù)據(jù)可視化的相關(guān)知識。


本篇文章為Python數(shù)據(jù)可視化第一篇,講解如何選擇合適的圖表進(jìn)行數(shù)據(jù)可視化。


國外專家Nathan Yau總結(jié)了數(shù)據(jù)可視化過程中要經(jīng)歷的4個過程。

  • 你擁有什么樣的數(shù)據(jù)(What data do you have) ?

  • 你想表達(dá)什么樣的數(shù)據(jù)信息(What do you want to know about your data) ?

  • 你應(yīng)該采用什么樣的數(shù)據(jù)可視化方法(What visualization methods should youuse) ?

  • 你從圖表中能獲得什么樣的數(shù)據(jù)信息(What do you see and does it makessense)?


如下圖所示:


圖片

其中,你應(yīng)該采用什么樣的數(shù)據(jù)可視化方法尤為關(guān)鍵,這就需要我們了解有哪些圖表類型來可視化數(shù)據(jù)。


根據(jù)表達(dá)數(shù)據(jù)的側(cè)重內(nèi)容點(diǎn),將圖表類型分為6大類:類別比較圖表、數(shù)據(jù)關(guān)系圖表、數(shù)據(jù)分布圖表、時間序列圖表、局部整體圖表和地理空間圖表(有些圖表也可以歸類于兩種或多種圖表類型)。


1


類別比較圖表

類別比較型圖表的數(shù)據(jù)一般分為:數(shù)值型和類別型兩種數(shù)據(jù)類型,主要包括:柱形圖、條形圖、雷達(dá)圖、坡度圖、詞云圖等,通常用來比較數(shù)據(jù)的規(guī)模。


如下所示:


圖片

2


數(shù)據(jù)關(guān)系圖表

數(shù)據(jù)關(guān)系型圖表分為數(shù)值關(guān)系型、層次關(guān)系型和網(wǎng)絡(luò)關(guān)系型三種圖表類型。

  • 數(shù)值關(guān)系型圖表主要展示兩個或多個變量之間的關(guān)系,包括最常見的散點(diǎn)圖、氣泡圖、曲面圖、矩陣散點(diǎn)圖等。該圖表的變量一般都為數(shù)值型,當(dāng)變量為1~3個時,可以采用散點(diǎn)圖、氣泡圖、曲面圖等;當(dāng)變量多于3個時,可以采用高維數(shù)據(jù)可視化方法,如平行坐標(biāo)系、矩陣散點(diǎn)圖、徑向坐標(biāo)圖、星形圖和切爾諾夫臉譜圖等。

  • 層次關(guān)系型圖表著重表達(dá)數(shù)據(jù)個體之間的層次關(guān)系,主要包括包含和從屬兩類,比如公司不同部門的組織結(jié)構(gòu),不同洲的國家包含關(guān)系等,包括節(jié)點(diǎn)鏈接圖、樹形圖、冰柱圖、旭日圖、圓填充圖、矩形樹狀圖等。

  • 網(wǎng)絡(luò)關(guān)系型圖表是指那些不具備層次結(jié)構(gòu)的關(guān)系數(shù)據(jù)的可視化。與層次關(guān)系型數(shù)據(jù)不同,網(wǎng)絡(luò)關(guān)系型數(shù)據(jù)并不具備自底向上或者自頂向下的層次結(jié)構(gòu),表達(dá)的數(shù)據(jù)關(guān)系更加自由和復(fù)雜,其可視化的方法常包括:?;鶊D、****圖、節(jié)點(diǎn)鏈接圖、弧長鏈接圖、蜂箱圖等。


如下圖所示:


圖片

3


數(shù)據(jù)分布圖表

數(shù)據(jù)分布型圖表主要顯示數(shù)據(jù)集中的數(shù)值及其出現(xiàn)的頻率或者分布規(guī)律,包括統(tǒng)計直方圖、核密度曲線圖、箱形圖、小提琴圖等。


如下圖所示:


圖片

其中,統(tǒng)計直方圖最為簡單與常見,又稱質(zhì)量分布圖,由一系列高度不等的縱向條紋或線段表示數(shù)據(jù)分布的情況,一般用橫軸表示數(shù)據(jù)類型,縱軸表示分布情況。


4


時間序列圖表

時間序列型圖表強(qiáng)調(diào)數(shù)據(jù)隨時間的變化規(guī)律或者趨勢,X軸一般為時序數(shù)據(jù),Y軸為數(shù)值型數(shù)據(jù),包括折線圖、面積圖、雷達(dá)圖、日歷圖、柱形圖等。


如下圖所示:


圖片

其中,折線圖是用來顯示時間序列變化趨勢的標(biāo)準(zhǔn)方式,非常適用于顯示在相等時間間隔下數(shù)據(jù)的趨勢。


5


局部整體圖表

局部整體型圖表能顯示出局部組成成分與整體的占比信息,主要包括餅圖、圓環(huán)圖、旭日圖、華夫餅圖、矩形樹狀圖等。


圖片

餅圖是用來呈現(xiàn)部分和整體關(guān)系的常見方式,在餅圖中,每個扇區(qū)的弧長(以及圓心角和面積)大小為其所表示的數(shù)量的比例。但要注意的是,這類圖很難去精確比較不同組成的大小。


6


地理空間圖表

地理空間型圖表主要展示數(shù)據(jù)中的精確位置和地理分布規(guī)律,包括等值區(qū)間地圖、帶氣泡的地圖、帶散點(diǎn)的地圖等。地圖用地理坐標(biāo)系可以映射位置數(shù)據(jù)。位置數(shù)據(jù)的形式有許多種,包括經(jīng)度、緯度、郵編等。但通常都是用緯度和經(jīng)度來描述的。Python的GeoPandas包可以讀取SHP和GEOJSON等格式的地理空間數(shù)據(jù),使用plot()函數(shù)或者ggplot()函數(shù)可以繪制地理空間型圖表。


圖片

《地圖管理?xiàng)l例》第十五條規(guī)定:“國家實(shí)行地圖審核制度。向社會公開的地圖,應(yīng)當(dāng)報送有審核權(quán)的測繪地理信息行政主管部門審核。但是,景區(qū)圖、街區(qū)圖、地鐵線路圖等內(nèi)容簡單的地圖除外?!?/p>

繪制這些不同類型的圖表,主要使用matplotlib、plotnine、Seaborn等包。對于二維直角坐標(biāo)系下的圖表,主要使用plotnine和Seaborn;對于極坐標(biāo)系和三維直角坐標(biāo)系下的圖表,則需要使用matplotlib繪制以上不同類別的圖表。


這些圖表的繪制方法在后面的文章都會進(jìn)行詳細(xì)講解。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。

萬能遙控器相關(guān)文章:萬能遙控器代碼


射頻卡相關(guān)文章:射頻卡原理


關(guān)鍵詞: Python

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉