分享 | 親親旬陡,這邊建議您打開這篇文章看一下呢~


所以小音為大家?guī)硪环輰W(xué)習(xí)資料

滴~請查收

本文總結(jié)了50個圖表繪制方法晾浴,對于數(shù)據(jù)分析的可視化有莫大的作用涌献。

在數(shù)據(jù)分析和可視化中最有用的 50 個 matplotlib 圖表星岗。 這些圖表列表允許您使用 python 的 matplotlib 和 seaborn 庫選擇要顯示的可視化對象填大。

介紹

這些圖表根據(jù)可視化目標(biāo)的7個不同情景進(jìn)行分組。 例如俏橘,如果要想象兩個變量之間的關(guān)系允华,請查看“關(guān)聯(lián)”部分下的圖表。 或者,如果您想要顯示值如何隨時間變化靴寂,請查看“變化”部分磷蜀,依此類推。



有效圖表的重要特征:

  • 在不歪曲事實的情況下傳達(dá)正確和必要的信息百炬;

  • 設(shè)計簡單褐隆,您不必太費(fèi)力就能理解它;

  • 從審美角度支持信息而不是掩蓋信息剖踊;

  • 信息沒有超負(fù)荷妓灌;

準(zhǔn)備工作

在代碼運(yùn)行前先引入下面的設(shè)置內(nèi)容。 當(dāng)然蜜宪,單獨(dú)的圖表虫埂,可以重新設(shè)置顯示要素。

一圃验、關(guān)聯(lián) (Correlation)

關(guān)聯(lián)圖表用于可視化兩個或更多變量之間的關(guān)系掉伏。 也就是說,一個變量如何相對于另一個變化澳窑。

1. 散點(diǎn)圖(Scatter plot)

散點(diǎn)圖是用于研究兩個變量之間關(guān)系的經(jīng)典的和基本的圖表斧散。 如果數(shù)據(jù)中有多個組,則可能需要以不同顏色可視化每個組。 在 matplotlib 中徙硅,您可以使用 plt.scatterplot() 方便地執(zhí)行此操作嗅绸。??





2. 帶邊界的氣泡圖(Bubble plot with Encircling)

有時,您希望在邊界內(nèi)顯示一組點(diǎn)以強(qiáng)調(diào)其重要性箍镜。 在這個例子中,你從數(shù)據(jù)框中獲取記錄煎源,并用下面代碼中描述的 encircle() 來使邊界顯示出來色迂。





3. 帶線性回歸最佳擬合線的散點(diǎn)圖 (Scatter plot with linear regression line of best fit)

如果你想了解兩個變量如何相互改變,那么最佳擬合線就是常用的方法手销。 下圖顯示了數(shù)據(jù)中各組之間最佳擬合線的差異歇僧。 要禁用分組并僅為整個數(shù)據(jù)集繪制一條最佳擬合線,請從下面的 sns.lmplot()調(diào)用中刪除 hue ='cyl'參數(shù)锋拖。





針對每列繪制線性回歸線:

或者诈悍,可以在其每列中顯示每個組的最佳擬合線。 可以通過在 sns.lmplot() 中設(shè)置 col=groupingcolumn 參數(shù)來實現(xiàn)兽埃,如下:





4. 抖動圖 (Jittering with stripplot)

通常侥钳,多個數(shù)據(jù)點(diǎn)具有完全相同的 X 和 Y 值。 結(jié)果讲仰,多個點(diǎn)繪制會重疊并隱藏慕趴。 為避免這種情況痪蝇,請將數(shù)據(jù)點(diǎn)稍微抖動,以便您可以直觀地看到它們冕房。 使用 seaborn 的 stripplot() 很方便實現(xiàn)這個功能躏啰。





5. 計數(shù)圖 (Counts Plot)

避免點(diǎn)重疊問題的另一個選擇是增加點(diǎn)的大小,這取決于該點(diǎn)中有多少點(diǎn)耙册。 因此给僵,點(diǎn)的大小越大,其周圍的點(diǎn)的集中度越高详拙。





6. 邊緣直方圖 (Marginal Histogram)

邊緣直方圖具有沿 X 和 Y 軸變量的直方圖帝际。 這用于可視化 X 和 Y 之間的關(guān)系以及單獨(dú)的 X 和 Y 的單變量分布。 這種圖經(jīng)常用于探索性數(shù)據(jù)分析(EDA)饶辙。



7. 邊緣箱形圖 (Marginal Boxplot)

邊緣箱圖與邊緣直方圖具有相似的用途蹲诀。 然而,箱線圖有助于精確定位 X 和 Y 的中位數(shù)弃揽、第25和第75百分位數(shù)脯爪。



8. 相關(guān)圖 (Correllogram)

相關(guān)圖用于直觀地查看給定數(shù)據(jù)框(或二維數(shù)組)中所有可能的數(shù)值變量對之間的相關(guān)度量。



9. 矩陣圖 (Pairwise Plot)

矩陣圖是探索性分析中的最愛矿微,用于理解所有可能的數(shù)值變量對之間的關(guān)系痕慢。 它是雙變量分析的必備工具。




二涌矢、偏差 (Deviation)

10. 發(fā)散型條形圖 (Diverging Bars)

如果您想根據(jù)單個指標(biāo)查看項目的變化情況掖举,并可視化此差異的順序和數(shù)量,那么散型條形圖 (Diverging Bars) 是一個很好的工具娜庇。 它有助于快速區(qū)分?jǐn)?shù)據(jù)中組的性能塔次,并且非常直觀,并且可以立即傳達(dá)這一點(diǎn)思灌。





11. 發(fā)散型文本 (Diverging Texts)

發(fā)散型文本 (Diverging Texts)與發(fā)散型條形圖 (Diverging Bars)相似俺叭,如果你想以一種漂亮和可呈現(xiàn)的方式顯示圖表中每個項目的價值,就可以使用這種方法泰偿。



12. 發(fā)散型包點(diǎn)圖 (Diverging Dot Plot)

發(fā)散型包點(diǎn)圖 (Diverging Dot Plot)也類似于發(fā)散型條形圖 (Diverging Bars)。 然而蜈垮,與發(fā)散型條形圖 (Diverging Bars)相比耗跛,條的缺失減少了組之間的對比度和差異。



13. 帶標(biāo)記的發(fā)散型棒棒糖圖 (Diverging Lollipop Chart with Markers)

帶標(biāo)記的棒棒糖圖通過強(qiáng)調(diào)您想要引起注意的任何重要數(shù)據(jù)點(diǎn)并在圖表中適當(dāng)?shù)亟o出推理攒发,提供了一種對差異進(jìn)行可視化的靈活方式调塌。


14. 面積圖 (Area Chart)

通過對軸和線之間的區(qū)域進(jìn)行著色,面積圖不僅強(qiáng)調(diào)峰和谷惠猿,而且還強(qiáng)調(diào)高點(diǎn)和低點(diǎn)的持續(xù)時間羔砾。 高點(diǎn)持續(xù)時間越長,線下面積越大。





三姜凄、排序 (Ranking)

15. 有序條形圖 (Ordered Bar Chart)

有序條形圖有效地傳達(dá)了項目的排名順序政溃。 但是,在圖表上方添加度量標(biāo)準(zhǔn)的值态秧,用戶可以從圖表本身獲取精確信息董虱。



16. 棒棒糖圖 (Lollipop Chart)

棒棒糖圖表以一種視覺上令人愉悅的方式提供與有序條形圖類似的目的。



17. 包點(diǎn)圖 (Dot Plot)

包點(diǎn)圖表傳達(dá)了項目的排名順序申鱼,并且由于它沿水平軸對齊愤诱,因此您可以更容易地看到點(diǎn)彼此之間的距離。





18. 坡度圖 (Slope Chart)

坡度圖最適合比較給定人/項目的“前”和“后”位置捐友。


19. 啞鈴圖 (Dumbbell Plot)

啞鈴圖表傳達(dá)了各種項目的“前”和“后”位置以及項目的等級排序淫半。 如果您想要將特定項目/計劃對不同對象的影響可視化,那么它非常有用匣砖。



四科吭、分布 (Distribution)

20. 連續(xù)變量的直方圖 (Histogram for Continuous Variable)

直方圖顯示給定變量的頻率分布。下面的圖表示基于類型變量對頻率條進(jìn)行分組脆粥,從而更好地了解連續(xù)變量和類型變量砌溺。



21. 類型變量的直方圖 (Histogram for Categorical Variable)

類型變量的直方圖顯示該變量的頻率分布。 通過對條形圖進(jìn)行著色变隔,可以將分布與表示顏色的另一個類型變量相關(guān)聯(lián)规伐。



22. 密度圖 (Density Plot)

密度圖是一種常用工具,用于可視化連續(xù)變量的分布匣缘。 通過“響應(yīng)”變量對它們進(jìn)行分組猖闪,您可以檢查 X 和 Y 之間的關(guān)系。以下情況用于表示目的肌厨,以描述城市里程的分布如何隨著汽缸數(shù)的變化而變化培慌。


23. 直方密度線圖 (Density Curves with Histogram)

帶有直方圖的密度曲線匯集了兩個圖所傳達(dá)的集體信息,因此您可以將它們放在一個圖中而不是兩個圖中柑爸。



24. Joy Plot

Joy Plot允許不同組的密度曲線重疊吵护,這是一種可視化大量分組數(shù)據(jù)的彼此關(guān)系分布的好方法。 它看起來很悅目表鳍,并清楚地傳達(dá)了正確的信息馅而。 它可以使用基于 matplotlib 的 joypy 包輕松構(gòu)建。

注:需要安裝 joypy 庫



25. 分布式包點(diǎn)圖 (Distributed Dot Plot)

分布式包點(diǎn)圖顯示按組分割的點(diǎn)的單變量分布譬圣。 點(diǎn)數(shù)越暗瓮恭,該區(qū)域的數(shù)據(jù)點(diǎn)集中度越高。 通過對中位數(shù)進(jìn)行不同著色厘熟,組的真實定位立即變得明顯屯蹦。



26. 箱形圖 (Box Plot)

箱形圖是一種可視化分布的好方法维哈,記住中位數(shù)、第25個第45個四分位數(shù)和異常值登澜。 但是阔挠,您需要注意解釋可能會扭曲該組中包含的點(diǎn)數(shù)的框的大小。 因此帖渠,手動提供每個框中的觀察數(shù)量可以幫助克服這個缺點(diǎn)谒亦。

例如,左邊的前兩個框具有相同大小的框空郊,即使它們的值分別是5和47份招。 因此,寫入該組中的觀察數(shù)量是必要的狞甚。



27. 包點(diǎn)+箱形圖 (Dot + Box Plot)

包點(diǎn)+箱形圖 (Dot + Box Plot)傳達(dá)類似于分組的箱形圖信息锁摔。 此外,這些點(diǎn)可以了解每組中有多少數(shù)據(jù)點(diǎn)哼审。



28. 小提琴圖 (Violin Plot)

小提琴圖是箱形圖在視覺上令人愉悅的替代品谐腰。 小提琴的形狀或面積取決于它所持有的觀察次數(shù)。 但是涩盾,小提琴圖可能更難以閱讀十气,并且在專業(yè)設(shè)置中不常用。


29. 人口金字塔 (Population Pyramid)

人口金字塔可用于顯示由數(shù)量排序的組的分布春霍。 或者它也可以用于顯示人口的逐級過濾砸西,因為它在下面用于顯示有多少人通過營銷渠道的每個階段。



30. 分類圖 (Categorical Plots)

由 seaborn庫 提供的分類圖可用于可視化彼此相關(guān)的2個或更多分類變量的計數(shù)分布址儒。




五芹枷、組成 (Composition)

31. 華夫餅圖 (Waffle Chart)

可以使用 pywaffle包 創(chuàng)建華夫餅圖,并用于顯示更大群體中的組的組成莲趣。

注:需要安裝 pywaffle 庫





32. 餅圖 (Pie Chart)

餅圖是顯示組成的經(jīng)典方式鸳慈。 然而,現(xiàn)在通常不建議使用它喧伞,因為餡餅部分的面積有時會變得誤導(dǎo)走芋。 因此,如果您要使用餅圖潘鲫,強(qiáng)烈建議明確記下餅圖每個部分的百分比或數(shù)字绿聘。


33. 樹形圖 (Treemap)

樹形圖類似于餅圖,它可以更好地完成工作而不會誤導(dǎo)每個組的貢獻(xiàn)次舌。

注:需要安裝 squarify 庫



34. 條形圖 (Bar Chart)

條形圖是基于計數(shù)或任何給定指標(biāo)可視化項目的經(jīng)典方式。 在下面的圖表中兽愤,我為每個項目使用了不同的顏色彼念,但您通撑不可能希望為所有項目選擇一種顏色,除非您按組對其進(jìn)行著色逐沙。 顏色名稱存儲在下面代碼中的all_colors中哲思。 您可以通過在 plt.plot()中設(shè)置顏色參數(shù)來更改條的顏色。



六吩案、變化 (Change)



35. 時間序列圖 (Time Series Plot)

時間序列圖用于顯示給定度量隨時間變化的方式棚赔。 在這里,您可以看到 1949年 至 1969年間航空客運(yùn)量的變化情況徘郭。



36. 帶波峰波谷標(biāo)記的時序圖 (Time Series with Peaks and Troughs Annotated)

下面的時間序列繪制了所有峰值和低谷靠益,并注釋了所選特殊事件的發(fā)生。



37. 自相關(guān)和部分自相關(guān)圖 (Autocorrelation (ACF) and Partial Autocorrelation (PACF) Plot)

自相關(guān)圖(ACF圖)顯示時間序列與其自身滯后的相關(guān)性残揉。 每條垂直線(在自相關(guān)圖上)表示系列與滯后0之間的滯后之間的相關(guān)性胧后。圖中的藍(lán)色陰影區(qū)域是顯著性水平。 那些位于藍(lán)線之上的滯后是顯著的滯后抱环。

那么如何解讀呢?

對于空乘旅客壳快,我們看到多達(dá)14個滯后跨越藍(lán)線,因此非常重要镇草。 這意味著眶痰,14年前的航空旅客交通量對今天的交通狀況有影響。

PACF在另一方面顯示了任何給定滯后(時間序列)與當(dāng)前序列的自相關(guān)梯啤,但是刪除了滯后的貢獻(xiàn)竖伯。



38. 交叉相關(guān)圖 (Cross Correlation plot)

交叉相關(guān)圖顯示了兩個時間序列相互之間的滯后。



39. 時間序列分解圖 (Time Series Decomposition Plot)

時間序列分解圖顯示時間序列分解為趨勢条辟,季節(jié)和殘差分量黔夭。



40. 多個時間序列 (Multiple Time Series)

您可以繪制多個時間序列,在同一圖表上測量相同的值羽嫡,如下所示本姥。



41. 使用輔助 Y 軸來繪制不同范圍的圖形 (Plotting with different scales using secondary Y axis)

如果要顯示在同一時間點(diǎn)測量兩個不同數(shù)量的兩個時間序列,則可以在右側(cè)的輔助Y軸上再繪制第二個系列杭棵。



42. 帶有誤差帶的時間序列 (Time Series with Error Bands)

如果您有一個時間序列數(shù)據(jù)集婚惫,每個時間點(diǎn)(日期/時間戳)有多個觀測值,則可以構(gòu)建帶有誤差帶的時間序列魂爪。 您可以在下面看到一些基于每天不同時間訂單的示例先舷。 另一個關(guān)于45天持續(xù)到達(dá)的訂單數(shù)量的例子。

在該方法中滓侍,訂單數(shù)量的平均值由白線表示蒋川。 并且計算95%置信區(qū)間并圍繞均值繪制。





43. 堆積面積圖 (Stacked Area Chart)

堆積面積圖可以直觀地顯示多個時間序列的貢獻(xiàn)程度撩笆,因此很容易相互比較捺球。



44. 未堆積的面積圖 (Area Chart UnStacked)

未堆積面積圖用于可視化兩個或更多個系列相對于彼此的進(jìn)度(起伏)缸浦。 在下面的圖表中,您可以清楚地看到隨著失業(yè)中位數(shù)持續(xù)時間的增加氮兵,個人儲蓄率會下降裂逐。 未堆積面積圖表很好地展示了這種現(xiàn)象。



45. 日歷熱力圖 (Calendar Heat Map)

與時間序列相比泣栈,日歷地圖是可視化基于時間的數(shù)據(jù)的備選和不太優(yōu)選的選項卜高。 雖然可以在視覺上吸引人,但數(shù)值并不十分明顯南片。 然而掺涛,它可以很好地描繪極端值和假日效果。

注:需要安裝 calmap 庫



46. 季節(jié)圖 (Seasonal Plot)

季節(jié)圖可用于比較上一季中同一天(年/月/周等)的時間序列铃绒。



七鸽照、分組 (Groups)

47. 樹狀圖 (Dendrogram)

樹形圖基于給定的距離度量將相似的點(diǎn)組合在一起,并基于點(diǎn)的相似性將它們組織在樹狀鏈接中颠悬。



48. 簇狀圖 (Cluster Plot)

簇狀圖 (Cluster Plot)可用于劃分屬于同一群集的點(diǎn)矮燎。 下面是根據(jù)USArrests數(shù)據(jù)集將美國各州分為5組的代表性示例。 此圖使用“謀殺”和“攻擊”列作為X和Y軸赔癌。 或者诞外,您可以將第一個到主要組件用作X軸和Y軸。



49. 安德魯斯曲線 (Andrews Curve)

安德魯斯曲線有助于可視化是否存在基于給定分組的數(shù)字特征的固有分組灾票。 如果要素(數(shù)據(jù)集中的列)無法區(qū)分組(cyl)峡谊,那么這些線將不會很好地隔離,如下所示刊苍。


50. 平行坐標(biāo) (Parallel Coordinates)

平行坐標(biāo)有助于可視化特征是否有助于有效地隔離組既们。 如果實現(xiàn)隔離,則該特征可能在預(yù)測該組時非常有用正什。


內(nèi)容來源

原文標(biāo)題:

Top 50 matplotlib Visualizations – The Master Plots (with full python? code)

原文鏈接:

https://www.machinelearningplus.com/plots/top-50-matplotlib-visualizations-the-master-plots-python/


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末啥纸,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子婴氮,更是在濱河造成了極大的恐慌斯棒,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件主经,死亡現(xiàn)場離奇詭異荣暮,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)罩驻,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進(jìn)店門穗酥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事迷扇“俳遥” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵蜓席,是天一觀的道長。 經(jīng)常有香客問我课锌,道長厨内,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任渺贤,我火速辦了婚禮雏胃,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘志鞍。我一直安慰自己瞭亮,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布固棚。 她就那樣靜靜地躺著统翩,像睡著了一般。 火紅的嫁衣襯著肌膚如雪此洲。 梳的紋絲不亂的頭發(fā)上厂汗,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天,我揣著相機(jī)與錄音呜师,去河邊找鬼娶桦。 笑死,一個胖子當(dāng)著我的面吹牛汁汗,可吹牛的內(nèi)容都是我干的衷畦。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼知牌,長吁一口氣:“原來是場噩夢啊……” “哼祈争!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起送爸,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤铛嘱,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后袭厂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體墨吓,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年纹磺,在試婚紗的時候發(fā)現(xiàn)自己被綠了帖烘。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡橄杨,死狀恐怖秘症,靈堂內(nèi)的尸體忽然破棺而出照卦,到底是詐尸還是另有隱情,我是刑警寧澤乡摹,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布役耕,位于F島的核電站,受9級特大地震影響聪廉,放射性物質(zhì)發(fā)生泄漏瞬痘。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一板熊、第九天 我趴在偏房一處隱蔽的房頂上張望框全。 院中可真熱鬧,春花似錦干签、人聲如沸津辩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽喘沿。三九已至,卻和暖如春鸭蛙,著一層夾襖步出監(jiān)牢的瞬間摹恨,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工娶视, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留晒哄,地道東北人。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓肪获,卻偏偏與公主長得像寝凌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子孝赫,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內(nèi)容