《Python商業(yè)數(shù)據(jù)分析》基礎(chǔ):數(shù)據(jù)可視化_第1頁
《Python商業(yè)數(shù)據(jù)分析》基礎(chǔ):數(shù)據(jù)可視化_第2頁
《Python商業(yè)數(shù)據(jù)分析》基礎(chǔ):數(shù)據(jù)可視化_第3頁
《Python商業(yè)數(shù)據(jù)分析》基礎(chǔ):數(shù)據(jù)可視化_第4頁
《Python商業(yè)數(shù)據(jù)分析》基礎(chǔ):數(shù)據(jù)可視化_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

Python商業(yè)數(shù)據(jù)分析數(shù)據(jù)可視化

學習目標使用matplotlib和seaborn模塊繪制折線圖、直方圖、柱狀圖、餅圖、散點圖等圖表掌握如何設(shè)置并修改圖表信息使用PyEcharts模塊實現(xiàn)地理數(shù)據(jù)可視化8.1MatplotlibMatplotlib是Python中最常用的可視化工具之一。Matplotlib可以方便地創(chuàng)建海量類型的二維圖表和基本的三維圖表,并且還集成了方便快捷的繪圖模塊。8.1.1圖表的創(chuàng)建創(chuàng)建二維圖表的基本方式是使用pyplot模塊的plot()函數(shù)。該函數(shù)需要傳入兩個長度一致的橫縱坐標數(shù)組,橫縱坐標數(shù)組對應(yīng)位置上的值構(gòu)成一個點,plot()會將這些點放在圖像中。在未指定其他參數(shù)的情況下默認會將所有點連線。在使用plot()構(gòu)造圖像后,還需要調(diào)用show()函數(shù)將圖像展示出來。8.1.1圖表的創(chuàng)建plot()函數(shù)含有幾個常用參數(shù):color:可以設(shè)置線條顏色。支持常用顏色的英文名稱,如'blue';也支持顏色十六進制值,如'#DC143C’。linestyle:設(shè)置線型。支持的線型有'-'、'--'、'-.'、':'、'None'、'solid'、'dashed'、'dashdot'、'dotted’等。linewidth:設(shè)置線條寬度,默認值為1.5。8.1.2繪制多函數(shù)圖像將多條曲線繪制在同一個坐標軸中可以通過多次調(diào)用plot()函數(shù)實現(xiàn):8.1.2繪制多函數(shù)圖像同時繪制多個圖像并列顯示,即子圖,可以通過pyplot.subplot()函數(shù)實現(xiàn):首先,利用pyplot.figure()函數(shù)創(chuàng)建一張新圖,表示之后的操作是基于該圖像的操作;其次,利用pyplot.subplot()函數(shù)創(chuàng)建一張子圖,其參數(shù)為三位正整數(shù),分別表示行數(shù)、列數(shù)、和索引值;然后,利用pyplot.plot()函數(shù)畫出所需要畫的圖形。8.1.2繪制多函數(shù)圖像pyplot.subplot()函數(shù)還有很多其他功能,如在子圖狀態(tài)下定義極坐標系,畫出極坐標系下的圖形:8.1.3添加圖表信息pyplot模塊提供豐富的方法設(shè)置和修改圖表信息:函數(shù)說明pyplot.axis()設(shè)置圖表顯示的坐標軸范圍pyplot.xlim()設(shè)置圖表橫坐標范圍pyplot.ylim()設(shè)置圖表縱坐標范圍pyplot.xlabel()設(shè)置圖表橫坐標的標簽pyplot.ylabel()設(shè)置圖表縱坐標的標簽pyplot.title()設(shè)置圖表的標題pyplot.legend()設(shè)置圖表的圖例信息pyplot.grid()設(shè)置圖表網(wǎng)格線pyplot.axhline()添加水平直線pyplot.axvline()添加垂直直線pyplot.text()添加文本pyplot.annotate()添加注釋8.1.3添加圖表信息添加橫縱坐標的標簽、圖表的標題、圖例、文本和網(wǎng)格線等:8.1.3添加圖表信息將兩張子圖并列顯示:8.1.4不同類型的圖表除了之前介紹的曲線圖,pyplot模塊還支持其他類型的基本圖形:直方圖:pyplot.hist()直方圖能夠直觀地顯示各組頻數(shù)/頻率的分布情況和各組之間的差別??梢允褂胮yplot.hist()來繪制直方圖,該函數(shù)有幾個重要參數(shù):x:用于繪制直方圖的數(shù)據(jù),支持列表和NumPy數(shù)組;bins:直方圖中箱子的數(shù)量;range:圖形的上下限,以列表形式傳入;normed:0為頻數(shù)分布直方圖,1為頻率分布直方圖,默認為0。

8.1.4不同類型的圖表柱狀圖:pyplot.bar()柱狀圖也稱條形圖,能夠清晰地揭示各組數(shù)據(jù)的大小,便于比較各組間數(shù)據(jù)的差別??梢酝ㄟ^pyplot.bar()呈現(xiàn),它的兩個主要參數(shù)x和height,分別表示橫坐標和對應(yīng)柱子的高度。8.1.4不同類型的圖表餅圖:pyplot.pie()餅圖可以直觀地展示總體中各組成部分所占的比重,通過pyplot.pie()可以繪制餅圖。該函數(shù)的重要參數(shù)有:x:類型為列表或NumPy數(shù)組等的數(shù)據(jù);labels:數(shù)據(jù)標簽;explode:離中心的距離;autopct:控制餅圖內(nèi)百分比設(shè)置;radius:控制餅圖半徑,默認值為1。

8.1.4不同類型的圖表散點圖:pyplot.scatter()散點圖既可以清晰地展示數(shù)據(jù)點的分布情況,也可以發(fā)現(xiàn)變量之間的關(guān)系??梢酝ㄟ^pyplot.scatter()函數(shù)進行繪制,其兩個參數(shù)x和y,分別表示橫縱坐標。8.2SeabornSeaborn是基于Matplotlib的圖形可視化庫。它提供了一種高度交互式界面,用戶能夠做出各種有吸引力的統(tǒng)計圖表。Seaborn能高度兼容Numpy、Series和DataFrame等數(shù)據(jù)結(jié)構(gòu)以及scipy與statsmodels等統(tǒng)計模式的可視化。8.2.1直方圖使用Seaborn庫繪制直方圖的函數(shù)是seaborn.distplot(),該函數(shù)的主要參數(shù)有:a:數(shù)據(jù)列,支持多種數(shù)據(jù)類型;bins:直方圖中箱子的數(shù)量;kde:False表示不顯示核密度估計,顯示頻數(shù)分布直方圖,True表示顯示核密度估計,顯示頻率分布直方圖,默認為True。

8.2.2柱狀圖seaborn.barplot()可以用來繪制柱狀圖,該函數(shù)的主要參數(shù)有:x和y分別是橫縱坐標數(shù)據(jù),hue為分類變量,這3個參數(shù)可以是NumPy數(shù)組,也可以是Series,若data參數(shù)傳入了DataFrame,該參數(shù)可只傳入DataFrame的列索引;data是數(shù)據(jù)集,若沒有傳入數(shù)據(jù)集,則前3個參數(shù)x、y和hue不能只傳入列索引。

8.2.3箱線圖繪制箱線圖的函數(shù)是seaborn.boxplot(),該函數(shù)的主要參數(shù)與seaborn.barplot()相似。每個箱線都有5條線,從上往下依次為該類別的上邊緣、75分位數(shù)、中位數(shù)、25分位數(shù)和下邊緣。

8.2.4散點圖散點圖的函數(shù)是seaborn.jointplot(),參數(shù)與seaborn.barplot()相似,但是沒有hue參數(shù)。

8.2.5結(jié)構(gòu)化多圖網(wǎng)格seaborn.PairGrid()可以繪制結(jié)構(gòu)化多圖網(wǎng)格,以快速提取有關(guān)復(fù)雜數(shù)據(jù)的大量信息。

8.2.6回歸圖使用回歸圖seaborn.lmplot()可以擬合兩者的曲線,該函數(shù)參數(shù)與seaborn.barplot()相似。

8.3PyEchartsPyEcharts

是用于生成Echarts圖表的類庫,Echarts是百度開發(fā)的數(shù)據(jù)可視化工具,涵蓋了30余種常見的圖表,圖表設(shè)計精美、可視化效果好。PyEcharts庫中有三個模塊可以繪制地圖,分別是地理坐標系模塊Geo、地圖模塊Map和百度地圖模塊BMap。在進行地理數(shù)據(jù)可視化前,需要安裝所需的地圖資源,可以通過以下語句安裝各類地圖資源:全球國家地圖:pipinstallecharts-countries-pypkg中國省級地圖:pipinstallecharts-china-provinces-pypkg中國市級地圖:pipinstallecharts-china-cities-pypkg中國縣級地圖:pipinstallecharts-china-counties-pypkg8.3.1繪制地圖使用Geo模塊進行空間數(shù)據(jù)的可視化的基本步驟為:創(chuàng)建一個Geo()實例;通過add_schema()方法指定需要繪制的地圖類型、確定中心點等;使用add()方法添加系列名稱、傳入數(shù)據(jù)集、選擇Geo圖類型('heatmap'為熱力圖)等;通過set_series_opts()方法來設(shè)置系列配置項,如圖元、文字、標簽等樣式;通過set_global_opts()方法來制定全局配置項,如標題、坐標軸、圖例等;最后使用render()方法保存為html文件bins:直方圖中箱子的數(shù)量;

8.3.1繪制地圖使用Geo模塊進行空間數(shù)據(jù)可視化的代碼如下:

8.3.1繪制地圖使用Geo模塊進行空間數(shù)據(jù)可視化的結(jié)果如下:

8.3.1繪制地圖也可以通過Map模塊對空間數(shù)據(jù)進行可視化,基本步驟與Geo大同小異:

8.3.1繪制地圖使用Map模塊進行空間數(shù)據(jù)可視化的結(jié)果如下:

8.3.2空間流動圖空間流動圖通過

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論