




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Python商業(yè)數(shù)據(jù)分析數(shù)據(jù)可視化
學(xué)習(xí)目標(biāo)使用matplotlib和seaborn模塊繪制折線圖、直方圖、柱狀圖、餅圖、散點(diǎn)圖等圖表掌握如何設(shè)置并修改圖表信息使用PyEcharts模塊實(shí)現(xiàn)地理數(shù)據(jù)可視化8.1MatplotlibMatplotlib是Python中最常用的可視化工具之一。Matplotlib可以方便地創(chuàng)建海量類型的二維圖表和基本的三維圖表,并且還集成了方便快捷的繪圖模塊。8.1.1圖表的創(chuàng)建創(chuàng)建二維圖表的基本方式是使用pyplot模塊的plot()函數(shù)。該函數(shù)需要傳入兩個(gè)長度一致的橫縱坐標(biāo)數(shù)組,橫縱坐標(biāo)數(shù)組對(duì)應(yīng)位置上的值構(gòu)成一個(gè)點(diǎn),plot()會(huì)將這些點(diǎn)放在圖像中。在未指定其他參數(shù)的情況下默認(rèn)會(huì)將所有點(diǎn)連線。在使用plot()構(gòu)造圖像后,還需要調(diào)用show()函數(shù)將圖像展示出來。8.1.1圖表的創(chuàng)建plot()函數(shù)含有幾個(gè)常用參數(shù):color:可以設(shè)置線條顏色。支持常用顏色的英文名稱,如'blue';也支持顏色十六進(jìn)制值,如'#DC143C’。linestyle:設(shè)置線型。支持的線型有'-'、'--'、'-.'、':'、'None'、'solid'、'dashed'、'dashdot'、'dotted’等。linewidth:設(shè)置線條寬度,默認(rèn)值為1.5。8.1.2繪制多函數(shù)圖像將多條曲線繪制在同一個(gè)坐標(biāo)軸中可以通過多次調(diào)用plot()函數(shù)實(shí)現(xiàn):8.1.2繪制多函數(shù)圖像同時(shí)繪制多個(gè)圖像并列顯示,即子圖,可以通過pyplot.subplot()函數(shù)實(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)下定義極坐標(biāo)系,畫出極坐標(biāo)系下的圖形:8.1.3添加圖表信息pyplot模塊提供豐富的方法設(shè)置和修改圖表信息:函數(shù)說明pyplot.axis()設(shè)置圖表顯示的坐標(biāo)軸范圍pyplot.xlim()設(shè)置圖表橫坐標(biāo)范圍pyplot.ylim()設(shè)置圖表縱坐標(biāo)范圍pyplot.xlabel()設(shè)置圖表橫坐標(biāo)的標(biāo)簽pyplot.ylabel()設(shè)置圖表縱坐標(biāo)的標(biāo)簽pyplot.title()設(shè)置圖表的標(biāo)題pyplot.legend()設(shè)置圖表的圖例信息pyplot.grid()設(shè)置圖表網(wǎng)格線pyplot.axhline()添加水平直線pyplot.axvline()添加垂直直線pyplot.text()添加文本pyplot.annotate()添加注釋8.1.3添加圖表信息添加橫縱坐標(biāo)的標(biāo)簽、圖表的標(biāo)題、圖例、文本和網(wǎng)格線等:8.1.3添加圖表信息將兩張子圖并列顯示:8.1.4不同類型的圖表除了之前介紹的曲線圖,pyplot模塊還支持其他類型的基本圖形:直方圖:pyplot.hist()直方圖能夠直觀地顯示各組頻數(shù)/頻率的分布情況和各組之間的差別??梢允褂胮yplot.hist()來繪制直方圖,該函數(shù)有幾個(gè)重要參數(shù):x:用于繪制直方圖的數(shù)據(jù),支持列表和NumPy數(shù)組;bins:直方圖中箱子的數(shù)量;range:圖形的上下限,以列表形式傳入;normed:0為頻數(shù)分布直方圖,1為頻率分布直方圖,默認(rèn)為0。
8.1.4不同類型的圖表柱狀圖:pyplot.bar()柱狀圖也稱條形圖,能夠清晰地揭示各組數(shù)據(jù)的大小,便于比較各組間數(shù)據(jù)的差別。可以通過pyplot.bar()呈現(xiàn),它的兩個(gè)主要參數(shù)x和height,分別表示橫坐標(biāo)和對(duì)應(yīng)柱子的高度。8.1.4不同類型的圖表餅圖:pyplot.pie()餅圖可以直觀地展示總體中各組成部分所占的比重,通過pyplot.pie()可以繪制餅圖。該函數(shù)的重要參數(shù)有:x:類型為列表或NumPy數(shù)組等的數(shù)據(jù);labels:數(shù)據(jù)標(biāo)簽;explode:離中心的距離;autopct:控制餅圖內(nèi)百分比設(shè)置;radius:控制餅圖半徑,默認(rèn)值為1。
8.1.4不同類型的圖表散點(diǎn)圖:pyplot.scatter()散點(diǎn)圖既可以清晰地展示數(shù)據(jù)點(diǎn)的分布情況,也可以發(fā)現(xiàn)變量之間的關(guān)系。可以通過pyplot.scatter()函數(shù)進(jìn)行繪制,其兩個(gè)參數(shù)x和y,分別表示橫縱坐標(biāo)。8.2SeabornSeaborn是基于Matplotlib的圖形可視化庫。它提供了一種高度交互式界面,用戶能夠做出各種有吸引力的統(tǒng)計(jì)圖表。Seaborn能高度兼容Numpy、Series和DataFrame等數(shù)據(jù)結(jié)構(gòu)以及scipy與statsmodels等統(tǒng)計(jì)模式的可視化。8.2.1直方圖使用Seaborn庫繪制直方圖的函數(shù)是seaborn.distplot(),該函數(shù)的主要參數(shù)有:a:數(shù)據(jù)列,支持多種數(shù)據(jù)類型;bins:直方圖中箱子的數(shù)量;kde:False表示不顯示核密度估計(jì),顯示頻數(shù)分布直方圖,True表示顯示核密度估計(jì),顯示頻率分布直方圖,默認(rèn)為True。
8.2.2柱狀圖seaborn.barplot()可以用來繪制柱狀圖,該函數(shù)的主要參數(shù)有:x和y分別是橫縱坐標(biāo)數(shù)據(jù),hue為分類變量,這3個(gè)參數(shù)可以是NumPy數(shù)組,也可以是Series,若data參數(shù)傳入了DataFrame,該參數(shù)可只傳入DataFrame的列索引;data是數(shù)據(jù)集,若沒有傳入數(shù)據(jù)集,則前3個(gè)參數(shù)x、y和hue不能只傳入列索引。
8.2.3箱線圖繪制箱線圖的函數(shù)是seaborn.boxplot(),該函數(shù)的主要參數(shù)與seaborn.barplot()相似。每個(gè)箱線都有5條線,從上往下依次為該類別的上邊緣、75分位數(shù)、中位數(shù)、25分位數(shù)和下邊緣。
8.2.4散點(diǎn)圖散點(diǎn)圖的函數(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è)計(jì)精美、可視化效果好。PyEcharts庫中有三個(gè)模塊可以繪制地圖,分別是地理坐標(biāo)系模塊Geo、地圖模塊Map和百度地圖模塊BMap。在進(jìn)行地理數(shù)據(jù)可視化前,需要安裝所需的地圖資源,可以通過以下語句安裝各類地圖資源:全球國家地圖:pipinstallecharts-countries-pypkg中國省級(jí)地圖:pipinstallecharts-china-provinces-pypkg中國市級(jí)地圖:pipinstallecharts-china-cities-pypkg中國縣級(jí)地圖:pipinstallecharts-china-counties-pypkg8.3.1繪制地圖使用Geo模塊進(jìn)行空間數(shù)據(jù)的可視化的基本步驟為:創(chuàng)建一個(gè)Geo()實(shí)例;通過add_schema()方法指定需要繪制的地圖類型、確定中心點(diǎn)等;使用add()方法添加系列名稱、傳入數(shù)據(jù)集、選擇Geo圖類型('heatmap'為熱力圖)等;通過set_series_opts()方法來設(shè)置系列配置項(xiàng),如圖元、文字、標(biāo)簽等樣式;通過set_global_opts()方法來制定全局配置項(xiàng),如標(biāo)題、坐標(biāo)軸、圖例等;最后使用render()方法保存為html文件bins:直方圖中箱子的數(shù)量;
8.3.1繪制地圖使用Geo模塊進(jìn)行空間數(shù)據(jù)可視化的代碼如下:
8.3.1繪制地圖使用Geo模塊進(jìn)行空間數(shù)據(jù)可視化的結(jié)果如下:
8.3.1繪制地圖也可以通過Map模塊對(duì)空間數(shù)據(jù)進(jìn)行可視化,基本步驟與Geo大同小異:
8.3.1繪制地圖使用Map模塊進(jìn)行空間數(shù)據(jù)可視化的結(jié)果如下:
8.3.2空間流動(dòng)圖空間流動(dòng)圖通過
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025翻譯服務(wù)合同(翻譯中心)
- 2025網(wǎng)絡(luò)版有條件借款合同范文
- 2025物業(yè)公司服務(wù)合同
- 社區(qū)個(gè)人工作計(jì)劃提升社區(qū)居民教育意識(shí)
- 2025財(cái)務(wù)咨詢合同書模板
- 中級(jí)收入建筑合同標(biāo)準(zhǔn)文本
- 2025公司員工勞動(dòng)合同(電子版)模板
- 安陽木質(zhì)游樂施工方案
- 2025物流和倉儲(chǔ)業(yè)勞動(dòng)合同(示范文本)
- 寫中介合同樣本
- 檔案管理實(shí)務(wù)基礎(chǔ)試題及答案
- 上海楊浦區(qū)社區(qū)工作者考試真題2024
- 廣東省云浮市新興縣2023-2024學(xué)年八年級(jí)下學(xué)期語文期中試卷(含答案)
- DeepSeek在法律服務(wù)領(lǐng)域的應(yīng)用前景
- 質(zhì)控工具在護(hù)理管理中的應(yīng)用
- 2025年糧油保管員職業(yè)技能資格知識(shí)考試題(附答案)
- DeepSeek人工智能的特點(diǎn)應(yīng)用挑戰(zhàn)與未來發(fā)展介紹課件
- 2025-2030年中國氣象探測系統(tǒng)市場十三五規(guī)劃規(guī)劃與發(fā)展建議分析報(bào)告
- 皮膚病靶向治療專家共識(shí)(2025版)解讀課件
- GB/T 31114-2024冰淇淋質(zhì)量要求
- NDA模板:2024年英文商業(yè)保密協(xié)議標(biāo)準(zhǔn)格式一
評(píng)論
0/150
提交評(píng)論