您好,登錄后才能下訂單哦!
小編給大家分享一下Python中什么庫(kù)適合用來(lái)做數(shù)據(jù)可視化,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
數(shù)據(jù)可視化是任何探索性數(shù)據(jù)分析或報(bào)告的關(guān)鍵步驟,它可以讓我們一眼就能洞察數(shù)據(jù)集。目前有許多非常好的商業(yè)智能工具,比如Tableau、googledatastudio和PowerBI,它們可以讓我們輕松地創(chuàng)建圖形。
然而,數(shù)據(jù)分析師或數(shù)據(jù)科學(xué)家還是習(xí)慣使用 Python 在 Jupyter notebook 上創(chuàng)建可視化效果。目前最流行的用于數(shù)據(jù)可視化的 Python 庫(kù):Matplotlib、Seaborn、plotlyexpress和Altair。每個(gè)可視化庫(kù)都有自己的特點(diǎn),沒(méi)有完美的可視化庫(kù),我們應(yīng)該知道每種數(shù)據(jù)可視化的優(yōu)缺點(diǎn),找到適合自己的才是關(guān)鍵。
首先,讓我們導(dǎo)入所有重要的庫(kù)。很可能你的計(jì)算機(jī)上已經(jīng)安裝了 Matplotlib 和 Seaborn 。但是,你可能沒(méi)有Plotly Express 和 Altair?,F(xiàn)在可以使用 pip install plotly==4.14.3和pip install altair 數(shù)據(jù)集輕松安裝它們。
import pandas as pd import matplotlib.pyplot as plt %matplotlib inline import altair as alt import plotly.express as px
現(xiàn)在我們將導(dǎo)入數(shù)據(jù)集。出于演示的目的,我們只創(chuàng)建一個(gè)數(shù)據(jù)框架,其中包含美國(guó)人口最多的15個(gè)城市。我還將修正城市名稱(chēng)的大寫(xiě)。當(dāng)我們創(chuàng)建可視化效果時(shí),它將促進(jìn)編輯過(guò)程。
df = pd.read_csv('worldcitiespop.csv') us = df[df['Country'] == 'us'] us['City'] = us['City'].str.title() cities = us[['City', 'Population']].nlargest(15, ['Population'], keep='first')
現(xiàn)在我們應(yīng)該準(zhǔn)備好分析每個(gè)庫(kù)。你準(zhǔn)備好了嗎?
獲勝者:Plotly Express
失敗者:Matplotlib、Altair和Seaborn
在這一類(lèi)中,所有的庫(kù)都表現(xiàn)良好。它們都很容易設(shè)置,基本編輯的結(jié)果對(duì)大多數(shù)分析都足夠好,但我們需要有贏(yíng)家和輸家,對(duì)嗎?
Matplotlib 很容易設(shè)置和記住代碼。然而,這個(gè)圖表看起來(lái)并不好。它可能會(huì)完成數(shù)據(jù)分析的工作,但在商務(wù)會(huì)議上的結(jié)果并不理想。
Seaborn 創(chuàng)造了一個(gè)更好的圖表。它會(huì)自動(dòng)添加 x 軸和 y 軸標(biāo)簽。x 記號(hào)看起來(lái)更好,但對(duì)于基本圖表來(lái)說(shuō),這比 Matplotlib 要好得多。
Plotly Expres,表現(xiàn)得非常出色。可以用很少的代碼創(chuàng)建一個(gè)好看的、專(zhuān)業(yè)的條形圖。不需要設(shè)置圖形或字體大小。它甚至可以旋轉(zhuǎn) x 軸標(biāo)簽。所有這些都只需要一行代碼。非常令人印象深刻!
Altair 圖表表現(xiàn)良好。它提供了一個(gè)好看的圖形,但它需要更多的代碼,它按字母順序,這并不可怕,而且在很多情況下都會(huì)有幫助,但我覺(jué)得這應(yīng)該是用戶(hù)應(yīng)該決定的。
優(yōu)勝者:Plotly Express、Seaborn、Matplotlib
失敗者:Altair
我相信這四個(gè)庫(kù)都有可能成為贏(yíng)家。自定義圖表在每一個(gè)上的表現(xiàn)卻是不同的,但我認(rèn)為,如果你學(xué)習(xí)足夠,你會(huì)學(xué)會(huì)如何創(chuàng)造美麗的可視化。然而,我正在考慮如何容易地編輯和自定義,把自己想象成一個(gè)新用戶(hù)。
Matplotlib 和 Seaborn 非常容易定制,而且它們的文檔非常棒。即使你沒(méi)有在他們的文檔中找到要查找的信息,你也很容易在 Stack Overflow 中找到它。他們還有合作的優(yōu)勢(shì)。Seaborn 基于 Matplotlib。因此,如果你知道如何編輯一個(gè),你就會(huì)知道如何編輯另一個(gè),這是非常方便的。如果你使用
sns.set_style('darkgrid')
設(shè)置 Seaborn 主題,它將影響 Matplotlib,這可能就是為什么 Matplotlib 和 Seaborn 是兩個(gè)更流行的數(shù)據(jù)可視化庫(kù)。
plotly express 從一開(kāi)始就提供了漂亮的圖表,例如,與Matplotlib相比,只需要較少的編輯就可以獲得非常不錯(cuò)的可視化效果。它的文檔很容易理解,他們通過(guò)Shift+Tab提供文檔,這非常方便。在我嘗試的所有庫(kù)中,它還提供了最多的定制選項(xiàng)。你可以編輯任何東西,包括字體,標(biāo)簽顏色等,最好的部分是它的毫不費(fèi)力。它的文檔中充滿(mǎn)了例子。
我發(fā)現(xiàn) Altair 的文件非常混亂。與其他庫(kù)不同,Altair沒(méi)有Shift+Tab快捷鍵。對(duì)于初學(xué)者來(lái)說(shuō),這是非常有問(wèn)題和困惑的。我能夠做一些編輯,但找到有關(guān)它的信息是有壓力的。在編輯方面與我花在 Matplotlib 和 plotly express 上的時(shí)間相比,對(duì)于初學(xué)者來(lái)說(shuō),Altair 并不是一個(gè)很好的選擇。
獲獎(jiǎng)?wù)撸篜lotly Express 和 Altair
失敗者:Matplolib 和 Seaborn
對(duì)于這一類(lèi),我將考慮除了那些我們可以通過(guò)代碼實(shí)現(xiàn)的功能之外的其他功能。Matplotlib 和 Seaborn 在這一類(lèi)中是非?;镜?。除了代碼之外,它們不提供任何額外的編輯或交互選項(xiàng)。然而,Plotly Express 在這一類(lèi)中大放異彩。首先,圖表是互動(dòng)的。您只需將鼠標(biāo)懸停在圖形上,就可以看到有關(guān)它的信息。
Altair 提供了一些選項(xiàng)來(lái)保存文件或通過(guò)Vega編輯器打開(kāi)JSON文件。
獲獎(jiǎng)?wù)撸篜lotly Express、Altair、Seaborn、Matplotlib
所有這些庫(kù)的文檔都很好。Plotly Express 有一個(gè)漂亮的網(wǎng)站,帶有代碼和可視化演示。很容易閱讀和找到有關(guān)它的信息。我喜歡他們的網(wǎng)站是多么的精致和精心設(shè)計(jì),你甚至可以與圖表互動(dòng)。
Altair 的網(wǎng)站上做得很好。他們的定制文檔不是最好的,但是網(wǎng)站看起來(lái)不錯(cuò),很容易找到代碼示例。我不會(huì)說(shuō)這是驚人的,但它確實(shí)起到了作用。
Seaborn 的網(wǎng)站還可以。有人說(shuō)他們有最好的文件,包含代碼示例。如果你正在尋找定制選項(xiàng),它可能會(huì)變得很棘手,但除此之外,它是一個(gè)干凈的網(wǎng)站,其文檔也相當(dāng)完整。
Matplotlib有一個(gè)完整的網(wǎng)站。在我看來(lái),它有太多的文字,找到一些信息可能有點(diǎn)棘手。然而,信息就在那里。他們還提供PDF格式的文檔。
以上是“Python中什么庫(kù)適合用來(lái)做數(shù)據(jù)可視化”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。